@fluentui/react-charting 5.16.37 → 5.16.38
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.json +28 -1
- package/CHANGELOG.md +13 -2
- package/dist/react-charting.js +1 -1
- package/dist/react-charting.min.js +1 -1
- package/lib/components/CommonComponents/CartesianChart.base.js +2 -1
- package/lib/components/CommonComponents/CartesianChart.base.js.map +1 -1
- package/lib/components/TreeChart/TreeChart.base.js +2 -1
- package/lib/components/TreeChart/TreeChart.base.js.map +1 -1
- package/lib/version.js +1 -1
- package/lib/version.js.map +1 -1
- package/lib-amd/AreaChart.js +1 -1
- package/lib-amd/AreaChart.js.map +1 -1
- package/lib-amd/CartesianChart.js +1 -1
- package/lib-amd/CartesianChart.js.map +1 -1
- package/lib-amd/DonutChart.js +1 -1
- package/lib-amd/DonutChart.js.map +1 -1
- package/lib-amd/GroupedVerticalBarChart.js +1 -1
- package/lib-amd/GroupedVerticalBarChart.js.map +1 -1
- package/lib-amd/HeatMapChart.js +1 -1
- package/lib-amd/HeatMapChart.js.map +1 -1
- package/lib-amd/HorizontalBarChart.js +1 -1
- package/lib-amd/HorizontalBarChart.js.map +1 -1
- package/lib-amd/HorizontalBarChartWithAxis.js +1 -1
- package/lib-amd/HorizontalBarChartWithAxis.js.map +1 -1
- package/lib-amd/Legends.js +1 -1
- package/lib-amd/Legends.js.map +1 -1
- package/lib-amd/LineChart.js +1 -1
- package/lib-amd/LineChart.js.map +1 -1
- package/lib-amd/PieChart.js +1 -1
- package/lib-amd/PieChart.js.map +1 -1
- package/lib-amd/SankeyChart.js +1 -1
- package/lib-amd/SankeyChart.js.map +1 -1
- package/lib-amd/Sparkline.js +1 -1
- package/lib-amd/Sparkline.js.map +1 -1
- package/lib-amd/StackedBarChart.js +1 -1
- package/lib-amd/StackedBarChart.js.map +1 -1
- package/lib-amd/TreeChart.js +1 -1
- package/lib-amd/TreeChart.js.map +1 -1
- package/lib-amd/VerticalBarChart.js +1 -1
- package/lib-amd/VerticalBarChart.js.map +1 -1
- package/lib-amd/VerticalStackedBarChart.js +1 -1
- package/lib-amd/VerticalStackedBarChart.js.map +1 -1
- package/lib-amd/components/AreaChart/AreaChart.base.js +10 -10
- package/lib-amd/components/AreaChart/AreaChart.base.js.map +1 -1
- package/lib-amd/components/AreaChart/AreaChart.styles.js +1 -1
- package/lib-amd/components/AreaChart/AreaChart.styles.js.map +1 -1
- package/lib-amd/components/AreaChart/index.js +2 -2
- package/lib-amd/components/AreaChart/index.js.map +1 -1
- package/lib-amd/components/CommonComponents/CartesianChart.base.js +13 -12
- package/lib-amd/components/CommonComponents/CartesianChart.base.js.map +1 -1
- package/lib-amd/components/CommonComponents/CartesianChart.styles.js +3 -3
- package/lib-amd/components/CommonComponents/CartesianChart.styles.js.map +1 -1
- package/lib-amd/components/CommonComponents/index.js +2 -2
- package/lib-amd/components/CommonComponents/index.js.map +1 -1
- package/lib-amd/components/DonutChart/Arc/Arc.js +1 -1
- package/lib-amd/components/DonutChart/Arc/Arc.js.map +1 -1
- package/lib-amd/components/DonutChart/Arc/index.js +2 -2
- package/lib-amd/components/DonutChart/Arc/index.js.map +1 -1
- package/lib-amd/components/DonutChart/DonutChart.base.js +4 -4
- package/lib-amd/components/DonutChart/DonutChart.base.js.map +1 -1
- package/lib-amd/components/DonutChart/Pie/Pie.js +1 -1
- package/lib-amd/components/DonutChart/Pie/Pie.js.map +1 -1
- package/lib-amd/components/DonutChart/Pie/index.js +2 -2
- package/lib-amd/components/DonutChart/Pie/index.js.map +1 -1
- package/lib-amd/components/DonutChart/index.js +3 -3
- package/lib-amd/components/DonutChart/index.js.map +1 -1
- package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js +6 -6
- package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js.map +1 -1
- package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.styles.js +1 -1
- package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.styles.js.map +1 -1
- package/lib-amd/components/GroupedVerticalBarChart/index.js +2 -2
- package/lib-amd/components/GroupedVerticalBarChart/index.js.map +1 -1
- package/lib-amd/components/HeatMapChart/HeatMapChart.base.js +7 -7
- package/lib-amd/components/HeatMapChart/HeatMapChart.base.js.map +1 -1
- package/lib-amd/components/HeatMapChart/index.js +2 -2
- package/lib-amd/components/HeatMapChart/index.js.map +1 -1
- package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.base.js +5 -5
- package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.base.js.map +1 -1
- package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.styles.js +2 -2
- package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.styles.js.map +1 -1
- package/lib-amd/components/HorizontalBarChart/index.js +3 -3
- package/lib-amd/components/HorizontalBarChart/index.js.map +1 -1
- package/lib-amd/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.base.js +6 -6
- package/lib-amd/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.base.js.map +1 -1
- package/lib-amd/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.styles.js +1 -1
- package/lib-amd/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.styles.js.map +1 -1
- package/lib-amd/components/HorizontalBarChartWithAxis/index.js +2 -2
- package/lib-amd/components/HorizontalBarChartWithAxis/index.js.map +1 -1
- package/lib-amd/components/Legends/Legends.base.js +11 -11
- package/lib-amd/components/Legends/Legends.base.js.map +1 -1
- package/lib-amd/components/Legends/Legends.styles.js +2 -2
- package/lib-amd/components/Legends/Legends.styles.js.map +1 -1
- package/lib-amd/components/Legends/index.js +3 -3
- package/lib-amd/components/Legends/index.js.map +1 -1
- package/lib-amd/components/Legends/shape.js +2 -2
- package/lib-amd/components/Legends/shape.js.map +1 -1
- package/lib-amd/components/LineChart/LineChart.base.js +15 -15
- package/lib-amd/components/LineChart/LineChart.base.js.map +1 -1
- package/lib-amd/components/LineChart/LineChart.styles.js +1 -1
- package/lib-amd/components/LineChart/LineChart.styles.js.map +1 -1
- package/lib-amd/components/LineChart/eventAnnotation/EventAnnotation.js +2 -2
- package/lib-amd/components/LineChart/eventAnnotation/EventAnnotation.js.map +1 -1
- package/lib-amd/components/LineChart/eventAnnotation/Textbox.js +2 -2
- package/lib-amd/components/LineChart/eventAnnotation/Textbox.js.map +1 -1
- package/lib-amd/components/LineChart/index.js +3 -3
- package/lib-amd/components/LineChart/index.js.map +1 -1
- package/lib-amd/components/PieChart/Arc/Arc.js +2 -2
- package/lib-amd/components/PieChart/Arc/Arc.js.map +1 -1
- package/lib-amd/components/PieChart/Arc/index.js +2 -2
- package/lib-amd/components/PieChart/Arc/index.js.map +1 -1
- package/lib-amd/components/PieChart/Pie/Pie.js +1 -1
- package/lib-amd/components/PieChart/Pie/Pie.js.map +1 -1
- package/lib-amd/components/PieChart/Pie/index.js +2 -2
- package/lib-amd/components/PieChart/Pie/index.js.map +1 -1
- package/lib-amd/components/PieChart/PieChart.base.js +1 -1
- package/lib-amd/components/PieChart/PieChart.base.js.map +1 -1
- package/lib-amd/components/PieChart/PieChart.styles.js +1 -1
- package/lib-amd/components/PieChart/PieChart.styles.js.map +1 -1
- package/lib-amd/components/PieChart/index.js +2 -2
- package/lib-amd/components/PieChart/index.js.map +1 -1
- package/lib-amd/components/SankeyChart/SankeyChart.base.js +2 -2
- package/lib-amd/components/SankeyChart/SankeyChart.base.js.map +1 -1
- package/lib-amd/components/SankeyChart/SankeyChart.styles.js +1 -1
- package/lib-amd/components/SankeyChart/SankeyChart.styles.js.map +1 -1
- package/lib-amd/components/SankeyChart/index.js +2 -2
- package/lib-amd/components/SankeyChart/index.js.map +1 -1
- package/lib-amd/components/Sparkline/Sparkline.base.js +1 -1
- package/lib-amd/components/Sparkline/Sparkline.base.js.map +1 -1
- package/lib-amd/components/Sparkline/Sparkline.styles.js +1 -1
- package/lib-amd/components/Sparkline/Sparkline.styles.js.map +1 -1
- package/lib-amd/components/Sparkline/index.js +2 -2
- package/lib-amd/components/Sparkline/index.js.map +1 -1
- package/lib-amd/components/StackedBarChart/MultiStackedBarChart.base.js +5 -5
- package/lib-amd/components/StackedBarChart/MultiStackedBarChart.base.js.map +1 -1
- package/lib-amd/components/StackedBarChart/MultiStackedBarChart.styles.js +1 -1
- package/lib-amd/components/StackedBarChart/MultiStackedBarChart.styles.js.map +1 -1
- package/lib-amd/components/StackedBarChart/StackedBarChart.base.js +5 -5
- package/lib-amd/components/StackedBarChart/StackedBarChart.base.js.map +1 -1
- package/lib-amd/components/StackedBarChart/StackedBarChart.styles.js +1 -1
- package/lib-amd/components/StackedBarChart/StackedBarChart.styles.js.map +1 -1
- package/lib-amd/components/StackedBarChart/index.js +5 -5
- package/lib-amd/components/StackedBarChart/index.js.map +1 -1
- package/lib-amd/components/TreeChart/TreeChart.base.js +4 -3
- package/lib-amd/components/TreeChart/TreeChart.base.js.map +1 -1
- package/lib-amd/components/TreeChart/TreeChart.styles.js +4 -4
- package/lib-amd/components/TreeChart/TreeChart.styles.js.map +1 -1
- package/lib-amd/components/TreeChart/index.js +2 -2
- package/lib-amd/components/TreeChart/index.js.map +1 -1
- package/lib-amd/components/VerticalBarChart/VerticalBarChart.base.js +6 -6
- package/lib-amd/components/VerticalBarChart/VerticalBarChart.base.js.map +1 -1
- package/lib-amd/components/VerticalBarChart/VerticalBarChart.styles.js +1 -1
- package/lib-amd/components/VerticalBarChart/VerticalBarChart.styles.js.map +1 -1
- package/lib-amd/components/VerticalBarChart/index.js +2 -2
- package/lib-amd/components/VerticalBarChart/index.js.map +1 -1
- package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.base.js +13 -13
- package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.base.js.map +1 -1
- package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.styles.js +1 -1
- package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.styles.js.map +1 -1
- package/lib-amd/components/VerticalStackedBarChart/index.js +2 -2
- package/lib-amd/components/VerticalStackedBarChart/index.js.map +1 -1
- package/lib-amd/index.js +19 -19
- package/lib-amd/index.js.map +1 -1
- package/lib-amd/types/index.js +2 -2
- package/lib-amd/types/index.js.map +1 -1
- package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.base.js +1 -1
- package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.base.js.map +1 -1
- package/lib-amd/utilities/ChartHoverCard/index.js +3 -3
- package/lib-amd/utilities/ChartHoverCard/index.js.map +1 -1
- package/lib-amd/utilities/FocusableTooltipText.js +2 -2
- package/lib-amd/utilities/FocusableTooltipText.js.map +1 -1
- package/lib-amd/utilities/index.js +3 -3
- package/lib-amd/utilities/index.js.map +1 -1
- package/lib-amd/utilities/utilities.js +4 -4
- package/lib-amd/utilities/utilities.js.map +1 -1
- package/lib-amd/version.js +1 -1
- package/lib-amd/version.js.map +1 -1
- package/lib-commonjs/AreaChart.js +1 -1
- package/lib-commonjs/AreaChart.js.map +1 -1
- package/lib-commonjs/CartesianChart.js +1 -1
- package/lib-commonjs/CartesianChart.js.map +1 -1
- package/lib-commonjs/DonutChart.js +1 -1
- package/lib-commonjs/DonutChart.js.map +1 -1
- package/lib-commonjs/GroupedVerticalBarChart.js +1 -1
- package/lib-commonjs/GroupedVerticalBarChart.js.map +1 -1
- package/lib-commonjs/HeatMapChart.js +1 -1
- package/lib-commonjs/HeatMapChart.js.map +1 -1
- package/lib-commonjs/HorizontalBarChart.js +1 -1
- package/lib-commonjs/HorizontalBarChart.js.map +1 -1
- package/lib-commonjs/HorizontalBarChartWithAxis.js +1 -1
- package/lib-commonjs/HorizontalBarChartWithAxis.js.map +1 -1
- package/lib-commonjs/Legends.js +1 -1
- package/lib-commonjs/Legends.js.map +1 -1
- package/lib-commonjs/LineChart.js +1 -1
- package/lib-commonjs/LineChart.js.map +1 -1
- package/lib-commonjs/PieChart.js +1 -1
- package/lib-commonjs/PieChart.js.map +1 -1
- package/lib-commonjs/SankeyChart.js +1 -1
- package/lib-commonjs/SankeyChart.js.map +1 -1
- package/lib-commonjs/Sparkline.js +1 -1
- package/lib-commonjs/Sparkline.js.map +1 -1
- package/lib-commonjs/StackedBarChart.js +1 -1
- package/lib-commonjs/StackedBarChart.js.map +1 -1
- package/lib-commonjs/TreeChart.js +1 -1
- package/lib-commonjs/TreeChart.js.map +1 -1
- package/lib-commonjs/VerticalBarChart.js +1 -1
- package/lib-commonjs/VerticalBarChart.js.map +1 -1
- package/lib-commonjs/VerticalStackedBarChart.js +1 -1
- package/lib-commonjs/VerticalStackedBarChart.js.map +1 -1
- package/lib-commonjs/components/AreaChart/AreaChart.base.js +10 -10
- package/lib-commonjs/components/AreaChart/AreaChart.base.js.map +1 -1
- package/lib-commonjs/components/AreaChart/AreaChart.styles.js +1 -1
- package/lib-commonjs/components/AreaChart/AreaChart.styles.js.map +1 -1
- package/lib-commonjs/components/AreaChart/index.js +2 -2
- package/lib-commonjs/components/AreaChart/index.js.map +1 -1
- package/lib-commonjs/components/CommonComponents/CartesianChart.base.js +13 -12
- package/lib-commonjs/components/CommonComponents/CartesianChart.base.js.map +1 -1
- package/lib-commonjs/components/CommonComponents/CartesianChart.styles.js +3 -3
- package/lib-commonjs/components/CommonComponents/CartesianChart.styles.js.map +1 -1
- package/lib-commonjs/components/CommonComponents/index.js +2 -2
- package/lib-commonjs/components/CommonComponents/index.js.map +1 -1
- package/lib-commonjs/components/DonutChart/Arc/Arc.js +1 -1
- package/lib-commonjs/components/DonutChart/Arc/Arc.js.map +1 -1
- package/lib-commonjs/components/DonutChart/Arc/index.js +2 -2
- package/lib-commonjs/components/DonutChart/Arc/index.js.map +1 -1
- package/lib-commonjs/components/DonutChart/DonutChart.base.js +4 -4
- package/lib-commonjs/components/DonutChart/DonutChart.base.js.map +1 -1
- package/lib-commonjs/components/DonutChart/Pie/Pie.js +1 -1
- package/lib-commonjs/components/DonutChart/Pie/Pie.js.map +1 -1
- package/lib-commonjs/components/DonutChart/Pie/index.js +2 -2
- package/lib-commonjs/components/DonutChart/Pie/index.js.map +1 -1
- package/lib-commonjs/components/DonutChart/index.js +3 -3
- package/lib-commonjs/components/DonutChart/index.js.map +1 -1
- package/lib-commonjs/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js +6 -6
- package/lib-commonjs/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js.map +1 -1
- package/lib-commonjs/components/GroupedVerticalBarChart/GroupedVerticalBarChart.styles.js +1 -1
- package/lib-commonjs/components/GroupedVerticalBarChart/GroupedVerticalBarChart.styles.js.map +1 -1
- package/lib-commonjs/components/GroupedVerticalBarChart/index.js +2 -2
- package/lib-commonjs/components/GroupedVerticalBarChart/index.js.map +1 -1
- package/lib-commonjs/components/HeatMapChart/HeatMapChart.base.js +7 -7
- package/lib-commonjs/components/HeatMapChart/HeatMapChart.base.js.map +1 -1
- package/lib-commonjs/components/HeatMapChart/index.js +2 -2
- package/lib-commonjs/components/HeatMapChart/index.js.map +1 -1
- package/lib-commonjs/components/HorizontalBarChart/HorizontalBarChart.base.js +5 -5
- package/lib-commonjs/components/HorizontalBarChart/HorizontalBarChart.base.js.map +1 -1
- package/lib-commonjs/components/HorizontalBarChart/HorizontalBarChart.styles.js +2 -2
- package/lib-commonjs/components/HorizontalBarChart/HorizontalBarChart.styles.js.map +1 -1
- package/lib-commonjs/components/HorizontalBarChart/index.js +3 -3
- package/lib-commonjs/components/HorizontalBarChart/index.js.map +1 -1
- package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.base.js +6 -6
- package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.base.js.map +1 -1
- package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.styles.js +1 -1
- package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.styles.js.map +1 -1
- package/lib-commonjs/components/HorizontalBarChartWithAxis/index.js +2 -2
- package/lib-commonjs/components/HorizontalBarChartWithAxis/index.js.map +1 -1
- package/lib-commonjs/components/Legends/Legends.base.js +11 -11
- package/lib-commonjs/components/Legends/Legends.base.js.map +1 -1
- package/lib-commonjs/components/Legends/Legends.styles.js +2 -2
- package/lib-commonjs/components/Legends/Legends.styles.js.map +1 -1
- package/lib-commonjs/components/Legends/index.js +3 -3
- package/lib-commonjs/components/Legends/index.js.map +1 -1
- package/lib-commonjs/components/Legends/shape.js +2 -2
- package/lib-commonjs/components/Legends/shape.js.map +1 -1
- package/lib-commonjs/components/LineChart/LineChart.base.js +15 -15
- package/lib-commonjs/components/LineChart/LineChart.base.js.map +1 -1
- package/lib-commonjs/components/LineChart/LineChart.styles.js +1 -1
- package/lib-commonjs/components/LineChart/LineChart.styles.js.map +1 -1
- package/lib-commonjs/components/LineChart/eventAnnotation/EventAnnotation.js +2 -2
- package/lib-commonjs/components/LineChart/eventAnnotation/EventAnnotation.js.map +1 -1
- package/lib-commonjs/components/LineChart/eventAnnotation/Textbox.js +2 -2
- package/lib-commonjs/components/LineChart/eventAnnotation/Textbox.js.map +1 -1
- package/lib-commonjs/components/LineChart/index.js +3 -3
- package/lib-commonjs/components/LineChart/index.js.map +1 -1
- package/lib-commonjs/components/PieChart/Arc/Arc.js +2 -2
- package/lib-commonjs/components/PieChart/Arc/Arc.js.map +1 -1
- package/lib-commonjs/components/PieChart/Arc/index.js +2 -2
- package/lib-commonjs/components/PieChart/Arc/index.js.map +1 -1
- package/lib-commonjs/components/PieChart/Pie/Pie.js +1 -1
- package/lib-commonjs/components/PieChart/Pie/Pie.js.map +1 -1
- package/lib-commonjs/components/PieChart/Pie/index.js +2 -2
- package/lib-commonjs/components/PieChart/Pie/index.js.map +1 -1
- package/lib-commonjs/components/PieChart/PieChart.base.js +1 -1
- package/lib-commonjs/components/PieChart/PieChart.base.js.map +1 -1
- package/lib-commonjs/components/PieChart/PieChart.styles.js +1 -1
- package/lib-commonjs/components/PieChart/PieChart.styles.js.map +1 -1
- package/lib-commonjs/components/PieChart/index.js +2 -2
- package/lib-commonjs/components/PieChart/index.js.map +1 -1
- package/lib-commonjs/components/SankeyChart/SankeyChart.base.js +2 -2
- package/lib-commonjs/components/SankeyChart/SankeyChart.base.js.map +1 -1
- package/lib-commonjs/components/SankeyChart/SankeyChart.styles.js +1 -1
- package/lib-commonjs/components/SankeyChart/SankeyChart.styles.js.map +1 -1
- package/lib-commonjs/components/SankeyChart/index.js +2 -2
- package/lib-commonjs/components/SankeyChart/index.js.map +1 -1
- package/lib-commonjs/components/Sparkline/Sparkline.base.js +1 -1
- package/lib-commonjs/components/Sparkline/Sparkline.base.js.map +1 -1
- package/lib-commonjs/components/Sparkline/Sparkline.styles.js +1 -1
- package/lib-commonjs/components/Sparkline/Sparkline.styles.js.map +1 -1
- package/lib-commonjs/components/Sparkline/index.js +2 -2
- package/lib-commonjs/components/Sparkline/index.js.map +1 -1
- package/lib-commonjs/components/StackedBarChart/MultiStackedBarChart.base.js +5 -5
- package/lib-commonjs/components/StackedBarChart/MultiStackedBarChart.base.js.map +1 -1
- package/lib-commonjs/components/StackedBarChart/MultiStackedBarChart.styles.js +1 -1
- package/lib-commonjs/components/StackedBarChart/MultiStackedBarChart.styles.js.map +1 -1
- package/lib-commonjs/components/StackedBarChart/StackedBarChart.base.js +5 -5
- package/lib-commonjs/components/StackedBarChart/StackedBarChart.base.js.map +1 -1
- package/lib-commonjs/components/StackedBarChart/StackedBarChart.styles.js +1 -1
- package/lib-commonjs/components/StackedBarChart/StackedBarChart.styles.js.map +1 -1
- package/lib-commonjs/components/StackedBarChart/index.js +5 -5
- package/lib-commonjs/components/StackedBarChart/index.js.map +1 -1
- package/lib-commonjs/components/TreeChart/TreeChart.base.js +4 -3
- package/lib-commonjs/components/TreeChart/TreeChart.base.js.map +1 -1
- package/lib-commonjs/components/TreeChart/TreeChart.styles.js +4 -4
- package/lib-commonjs/components/TreeChart/TreeChart.styles.js.map +1 -1
- package/lib-commonjs/components/TreeChart/index.js +2 -2
- package/lib-commonjs/components/TreeChart/index.js.map +1 -1
- package/lib-commonjs/components/VerticalBarChart/VerticalBarChart.base.js +6 -6
- package/lib-commonjs/components/VerticalBarChart/VerticalBarChart.base.js.map +1 -1
- package/lib-commonjs/components/VerticalBarChart/VerticalBarChart.styles.js +1 -1
- package/lib-commonjs/components/VerticalBarChart/VerticalBarChart.styles.js.map +1 -1
- package/lib-commonjs/components/VerticalBarChart/index.js +2 -2
- package/lib-commonjs/components/VerticalBarChart/index.js.map +1 -1
- package/lib-commonjs/components/VerticalStackedBarChart/VerticalStackedBarChart.base.js +13 -13
- package/lib-commonjs/components/VerticalStackedBarChart/VerticalStackedBarChart.base.js.map +1 -1
- package/lib-commonjs/components/VerticalStackedBarChart/VerticalStackedBarChart.styles.js +1 -1
- package/lib-commonjs/components/VerticalStackedBarChart/VerticalStackedBarChart.styles.js.map +1 -1
- package/lib-commonjs/components/VerticalStackedBarChart/index.js +2 -2
- package/lib-commonjs/components/VerticalStackedBarChart/index.js.map +1 -1
- package/lib-commonjs/index.js +19 -19
- package/lib-commonjs/index.js.map +1 -1
- package/lib-commonjs/types/index.js +2 -2
- package/lib-commonjs/types/index.js.map +1 -1
- package/lib-commonjs/utilities/ChartHoverCard/ChartHoverCard.base.js +1 -1
- package/lib-commonjs/utilities/ChartHoverCard/ChartHoverCard.base.js.map +1 -1
- package/lib-commonjs/utilities/ChartHoverCard/index.js +3 -3
- package/lib-commonjs/utilities/ChartHoverCard/index.js.map +1 -1
- package/lib-commonjs/utilities/FocusableTooltipText.js +2 -2
- package/lib-commonjs/utilities/FocusableTooltipText.js.map +1 -1
- package/lib-commonjs/utilities/index.js +3 -3
- package/lib-commonjs/utilities/index.js.map +1 -1
- package/lib-commonjs/utilities/utilities.js +4 -4
- package/lib-commonjs/utilities/utilities.js.map +1 -1
- package/lib-commonjs/version.js +1 -1
- package/lib-commonjs/version.js.map +1 -1
- package/package.json +5 -5
|
@@ -15,8 +15,9 @@ var getClassNames = classNamesFunction();
|
|
|
15
15
|
var CartesianChartBase = /** @class */ (function (_super) {
|
|
16
16
|
__extends(CartesianChartBase, _super);
|
|
17
17
|
function CartesianChartBase(props) {
|
|
18
|
+
var _this = this;
|
|
18
19
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
|
|
19
|
-
|
|
20
|
+
_this = _super.call(this, props) || this;
|
|
20
21
|
_this.minLegendContainerHeight = 32;
|
|
21
22
|
_this._isRtl = getRTL();
|
|
22
23
|
// TO DO: Write a common functional component for Multi value callout and divide sub count method
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CartesianChart.base.js","sourceRoot":"../src/","sources":["components/CommonComponents/CartesianChart.base.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { IProcessedStyleSet } from '@fluentui/react/lib/Styling';\nimport { classNamesFunction, getId, getRTL } from '@fluentui/react/lib/Utilities';\nimport { Callout } from '@fluentui/react/lib/Callout';\nimport { FocusZone, FocusZoneDirection } from '@fluentui/react-focus';\nimport {\n ICartesianChartStyles,\n ICartesianChartStyleProps,\n IModifiedCartesianChartProps,\n IYValueHover,\n} from '../../index';\nimport {\n ChartHoverCard,\n convertToLocaleString,\n createNumericXAxis,\n createStringXAxis,\n IAxisData,\n getAccessibleDataObject,\n getDomainNRangeValues,\n createDateXAxis,\n createYAxis,\n createStringYAxis,\n IMargins,\n getMinMaxOfYAxis,\n XAxisTypes,\n YAxisType,\n createWrapOfXLabels,\n rotateXAxisLabels,\n Points,\n pointTypes,\n calculateLongestYAxisLabel,\n createYAxisLabels,\n ChartTypes,\n} from '../../utilities/index';\nimport { LegendShape, Shape } from '../Legends/index';\n\nconst getClassNames = classNamesFunction<ICartesianChartStyleProps, ICartesianChartStyles>();\n\nexport interface ICartesianChartState {\n containerWidth: number;\n containerHeight: number;\n _width: number;\n _height: number;\n /* To update this values using setState in render method.\n * To avoid multiple re renders, Only first time setting the value.\n */\n isRemoveValCalculated?: boolean;\n /* Used for when WrapXAxisLabels props appeared.\n * To display the total word (space separated words), Need to have more space than usual.\n * This height will get total height need to disaply total word.\n * These value need to be removed from actual svg height/graph height.\n * Defalut value is 0. And this values calculted when 'wrapXAxisLables' or 'showXAxisLablesTooltip' is true.\n */\n _removalValueForTextTuncate?: number;\n startFromX: number;\n}\n\n/**\n * Cartesian chart used for\n * 1.draw X and Y axis of the chart\n * 2.Callout\n * 3.Fit parent Continer\n */\nexport class CartesianChartBase extends React.Component<IModifiedCartesianChartProps, ICartesianChartState> {\n private _classNames: IProcessedStyleSet<ICartesianChartStyles>;\n private chartContainer: HTMLDivElement;\n private legendContainer: HTMLDivElement;\n private minLegendContainerHeight: number = 32;\n private xAxisElement: SVGElement | null;\n private yAxisElement: SVGElement | null;\n private yAxisElementSecondary: SVGElement | null;\n private margins: IMargins;\n private idForGraph: string;\n private _reqID: number;\n private _isRtl: boolean = getRTL();\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private _xScale: any;\n\n constructor(props: IModifiedCartesianChartProps) {\n super(props);\n this.state = {\n containerHeight: 0,\n containerWidth: 0,\n _width: this.props.width || 600,\n _height: this.props.height || 350,\n _removalValueForTextTuncate: 0,\n isRemoveValCalculated: true,\n startFromX: 0,\n };\n this.idForGraph = getId('chart_');\n /**\n * In RTL mode, Only graph will be rendered left/right. We need to provide left and right margins manually.\n * So that, in RTL, left margins becomes right margins and viceversa.\n * As graph needs to be drawn perfecty, these values consider as default values.\n * Same margins using for all other cartesian charts. Can be accessible through 'getMargins' call back method.\n */\n this.margins = {\n top: this.props.margins?.top ?? 20,\n bottom: this.props.margins?.bottom ?? 35,\n right: this._isRtl\n ? this.props.margins?.left ?? 40\n : this.props.margins?.right ?? this.props?.secondaryYScaleOptions\n ? 40\n : 20,\n left: this._isRtl\n ? this.props.margins?.right ?? this.props?.secondaryYScaleOptions\n ? 40\n : 20\n : this.props.margins?.left ?? 40,\n };\n }\n\n public componentDidMount(): void {\n this._fitParentContainer();\n if (\n this.props.chartType === ChartTypes.HorizontalBarChartWithAxis &&\n this.props.showYAxisLables &&\n this.yAxisElement\n ) {\n const maxYAxisLabelLength = calculateLongestYAxisLabel(this.props.points, this.yAxisElement!);\n if (this.state.startFromX !== maxYAxisLabelLength) {\n this.setState({\n startFromX: maxYAxisLabelLength,\n });\n }\n } else if (this.state.startFromX !== 0) {\n this.setState({\n startFromX: 0,\n });\n }\n }\n\n public componentWillUnmount(): void {\n cancelAnimationFrame(this._reqID);\n }\n\n public componentDidUpdate(prevProps: IModifiedCartesianChartProps): void {\n if (prevProps.height !== this.props.height || prevProps.width !== this.props.width) {\n this._fitParentContainer();\n }\n\n if (\n !this.props.wrapXAxisLables &&\n this.props.rotateXAxisLables &&\n this.props.xAxisType! === XAxisTypes.StringAxis\n ) {\n const rotateLabelProps = {\n node: this.xAxisElement,\n xAxis: this._xScale,\n };\n const rotatedHeight = rotateXAxisLabels(rotateLabelProps);\n if (\n this.state.isRemoveValCalculated &&\n this.state._removalValueForTextTuncate !== rotatedHeight! + this.margins.bottom! &&\n rotatedHeight! > 0\n ) {\n this.setState({\n _removalValueForTextTuncate: rotatedHeight! + this.margins.bottom!,\n isRemoveValCalculated: false,\n });\n }\n }\n if (\n this.props.chartType === ChartTypes.HorizontalBarChartWithAxis &&\n this.props.showYAxisLables &&\n this.yAxisElement\n ) {\n const maxYAxisLabelLength = calculateLongestYAxisLabel(this.props.points, this.yAxisElement!);\n if (this.state.startFromX !== maxYAxisLabelLength) {\n this.setState({\n startFromX: maxYAxisLabelLength,\n });\n }\n } else if (this.state.startFromX !== 0) {\n this.setState({\n startFromX: 0,\n });\n }\n }\n\n public render(): JSX.Element {\n const {\n calloutProps,\n points,\n chartType,\n chartHoverProps,\n svgFocusZoneProps,\n svgProps,\n culture,\n dateLocalizeOptions,\n timeFormatLocale,\n customDateTimeFormatter,\n } = this.props;\n if (this.props.parentRef) {\n this._fitParentContainer();\n }\n\n const margin = { ...this.margins };\n if (this.props.chartType === ChartTypes.HorizontalBarChartWithAxis) {\n if (!this._isRtl) {\n margin.left! += this.state.startFromX;\n } else {\n margin.right! += this.state.startFromX;\n }\n }\n // Callback for margins to the chart\n this.props.getmargins && this.props.getmargins(margin);\n\n const XAxisParams = {\n domainNRangeValues: getDomainNRangeValues(\n points,\n this.props.getDomainMargins ? this.props.getDomainMargins(this.state.containerWidth) : this.margins,\n this.state.containerWidth,\n chartType,\n this._isRtl,\n this.props.xAxisType,\n this.props.barwidth!,\n this.props.tickValues!,\n // This is only used for Horizontal Bar Chart with Axis for y as string axis\n this.state.startFromX,\n ),\n containerHeight: this.state.containerHeight - this.state._removalValueForTextTuncate!,\n margins: this.margins,\n xAxisElement: this.xAxisElement!,\n showRoundOffXTickValues: true,\n xAxisCount: this.props.xAxisTickCount,\n xAxistickSize: this.props.xAxistickSize,\n tickPadding: this.props.tickPadding || this.props.showXAxisLablesTooltip ? 5 : 10,\n xAxisPadding: this.props.xAxisPadding,\n xAxisInnerPadding: this.props.xAxisInnerPadding,\n xAxisOuterPadding: this.props.xAxisOuterPadding,\n };\n\n const YAxisParams = {\n margins: this.margins,\n containerWidth: this.state.containerWidth,\n containerHeight: this.state.containerHeight - this.state._removalValueForTextTuncate!,\n yAxisElement: this.yAxisElement,\n yAxisTickFormat: this.props.yAxisTickFormat!,\n yAxisTickCount: this.props.yAxisTickCount!,\n yMinValue: this.props.yMinValue || 0,\n yMaxValue: this.props.yMaxValue || 0,\n tickPadding: 10,\n maxOfYVal: this.props.maxOfYVal,\n yMinMaxValues: getMinMaxOfYAxis(points, chartType, this.props.yAxisType),\n // please note these padding default values must be consistent in here\n // and the parent chart(HBWA/Vertical etc..) for more details refer example\n // http://using-d3js.com/04_07_ordinal_scales.html\n yAxisPadding: this.props.yAxisPadding || 0,\n };\n /**\n * These scales used for 2 purposes.\n * 1. To create x and y axis\n * 2. To draw the graph.\n * For area/line chart using same scales. For other charts, creating their own scales to draw the graph.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let xScale: any;\n switch (this.props.xAxisType!) {\n case XAxisTypes.NumericAxis:\n xScale = createNumericXAxis(XAxisParams, this.props.chartType, culture);\n break;\n case XAxisTypes.DateAxis:\n xScale = createDateXAxis(\n XAxisParams,\n this.props.tickParams!,\n culture,\n dateLocalizeOptions,\n timeFormatLocale,\n customDateTimeFormatter,\n );\n break;\n case XAxisTypes.StringAxis:\n xScale = createStringXAxis(XAxisParams, this.props.tickParams!, this.props.datasetForXAxisDomain!, culture);\n break;\n default:\n xScale = createNumericXAxis(XAxisParams, this.props.chartType, culture);\n }\n this._xScale = xScale;\n\n /*\n * To enable wrapping of x axis tick values or to display complete x axis tick values,\n * we need to calculate how much space it needed to render the text.\n * No need to re-calculate every time the chart renders and same time need to get an update. So using setState.\n * Required space will be calculated first time chart rendering and if any width/height of chart updated.\n * */\n if (this.props.wrapXAxisLables || this.props.showXAxisLablesTooltip) {\n const wrapLabelProps = {\n node: this.xAxisElement,\n xAxis: xScale,\n showXAxisLablesTooltip: this.props.showXAxisLablesTooltip || false,\n noOfCharsToTruncate: this.props.noOfCharsToTruncate || 4,\n };\n const temp = xScale && (createWrapOfXLabels(wrapLabelProps) as number);\n // this value need to be updated for draw graph updated. So instead of using private value, using set state.\n if (this.state.isRemoveValCalculated && this.state._removalValueForTextTuncate !== temp) {\n this.setState({ _removalValueForTextTuncate: temp, isRemoveValCalculated: false });\n }\n }\n\n /**\n * These scales used for 2 purposes.\n * 1. To create x and y axis\n * 2. To draw the graph.\n * For area/line chart using same scales. For other charts, creating their own scales to draw the graph.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let yScale: any;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let yScaleSecondary: any;\n const axisData: IAxisData = { yAxisDomainValues: [] };\n if (this.props.yAxisType && this.props.yAxisType === YAxisType.StringAxis) {\n yScale = createStringYAxis(\n YAxisParams,\n this.props.stringDatasetForYAxisDomain!,\n this._isRtl,\n this.props.chartType,\n this.props.barwidth,\n culture,\n );\n } else {\n if (this.props?.secondaryYScaleOptions) {\n const YAxisParamsSecondary = {\n margins: this.margins,\n containerWidth: this.state.containerWidth,\n containerHeight: this.state.containerHeight - this.state._removalValueForTextTuncate!,\n yAxisElement: this.yAxisElementSecondary,\n yAxisTickFormat: this.props.yAxisTickFormat!,\n yAxisTickCount: this.props.yAxisTickCount!,\n yMinValue: this.props.secondaryYScaleOptions?.yMinValue || 0,\n yMaxValue: this.props.secondaryYScaleOptions?.yMaxValue ?? 100,\n tickPadding: 10,\n maxOfYVal: this.props.secondaryYScaleOptions?.yMaxValue ?? 100,\n yMinMaxValues: getMinMaxOfYAxis(points, chartType),\n yAxisPadding: this.props.yAxisPadding,\n };\n\n yScaleSecondary = createYAxis(\n YAxisParamsSecondary,\n this._isRtl,\n axisData,\n chartType,\n this.props.barwidth!,\n true,\n );\n }\n yScale = createYAxis(YAxisParams, this._isRtl, axisData, chartType, this.props.barwidth!);\n }\n\n /*\n * To create y axis tick values by if specified\n truncating the rest of the text and showing elipsis\n or showing the whole string,\n * */\n this.props.chartType === ChartTypes.HorizontalBarChartWithAxis &&\n yScale &&\n createYAxisLabels(\n this.yAxisElement,\n yScale,\n this.props.noOfCharsToTruncate || 4,\n this.props.showYAxisLablesTooltip || false,\n this.state.startFromX,\n this._isRtl,\n );\n\n this.props.getAxisData && this.props.getAxisData(axisData);\n // Callback function for chart, returns axis\n this._getData(xScale, yScale);\n\n this._classNames = getClassNames(this.props.styles!, {\n theme: this.props.theme!,\n width: this.state._width,\n height: this.state._height,\n className: this.props.className,\n isRtl: this._isRtl,\n });\n\n const svgDimensions = {\n width: this.state.containerWidth,\n height: this.state.containerHeight,\n };\n\n const children = this.props.children({\n ...this.state,\n xScale,\n yScale,\n yScaleSecondary,\n });\n\n let focusDirection;\n if (this.props.focusZoneDirection === FocusZoneDirection.vertical) {\n focusDirection = this.props.focusZoneDirection;\n } else if (this.props.focusZoneDirection) {\n focusDirection = this.props.focusZoneDirection;\n } else {\n focusDirection = FocusZoneDirection.horizontal;\n }\n return (\n <div\n id={this.idForGraph}\n className={this._classNames.root}\n role={'presentation'}\n ref={(rootElem: HTMLDivElement) => (this.chartContainer = rootElem)}\n onMouseLeave={this._onChartLeave}\n >\n <FocusZone direction={focusDirection} {...svgFocusZoneProps}>\n <svg\n width={svgDimensions.width}\n height={svgDimensions.height}\n aria-label={this.props.chartTitle}\n style={{ display: 'block' }}\n {...svgProps}\n >\n <g\n ref={(e: SVGElement | null) => {\n this.xAxisElement = e;\n }}\n id={`xAxisGElement${this.idForGraph}`}\n // To add wrap of x axis lables feature, need to remove word height from svg height.\n transform={`translate(0, ${\n svgDimensions.height - this.margins.bottom! - this.state._removalValueForTextTuncate!\n })`}\n className={this._classNames.xAxis}\n />\n <g\n ref={(e: SVGElement | null) => {\n this.yAxisElement = e;\n }}\n id={`yAxisGElement${this.idForGraph}`}\n transform={`translate(${\n this._isRtl\n ? svgDimensions.width - this.margins.right! - this.state.startFromX\n : this.margins.left! + this.state.startFromX\n }, 0)`}\n className={this._classNames.yAxis}\n />\n {this.props.secondaryYScaleOptions && (\n <g\n ref={(e: SVGElement | null) => {\n this.yAxisElementSecondary = e;\n }}\n id={`yAxisGElementSecondary${this.idForGraph}`}\n transform={`translate(${\n this._isRtl ? this.margins.left! : svgDimensions.width - this.margins.right!\n }, 0)`}\n className={this._classNames.yAxis}\n />\n )}\n {children}\n </svg>\n </FocusZone>\n {!this.props.hideLegend && (\n <div ref={(e: HTMLDivElement) => (this.legendContainer = e)} className={this._classNames.legendContainer}>\n {this.props.legendBars}\n </div>\n )}\n {/** The callout is used for narration, so keep it mounted on the DOM */}\n <Callout\n hidden={!(!this.props.hideTooltip && calloutProps!.isCalloutVisible)}\n /** Keep the callout updated with details of focused/hovered chart element */\n shouldUpdateWhenHidden={true}\n {...calloutProps}\n >\n {/** Given custom callout, then it will render */}\n {this.props.customizedCallout && this.props.customizedCallout}\n {/** single x point its corresponding y points of all the bars/lines in chart will render in callout */}\n {!this.props.customizedCallout && this.props.isCalloutForStack && this._multiValueCallout(calloutProps)}\n {/** single x point its corresponding y point of single line/bar in the chart will render in callout */}\n {!this.props.customizedCallout && !this.props.isCalloutForStack && (\n <ChartHoverCard\n XValue={calloutProps.XValue}\n Legend={calloutProps.legend!}\n YValue={calloutProps.YValue!}\n color={calloutProps.color!}\n culture={this.props.culture}\n {...chartHoverProps}\n />\n )}\n </Callout>\n </div>\n );\n }\n\n // TO DO: Write a common functional component for Multi value callout and divide sub count method\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private _multiValueCallout = (calloutProps: any) => {\n const yValueHoverSubCountsExists: boolean = this._yValueHoverSubCountsExists(calloutProps.YValueHover);\n return (\n <div className={this._classNames.calloutContentRoot}>\n <div\n className={this._classNames.calloutDateTimeContainer}\n style={yValueHoverSubCountsExists ? { marginBottom: '11px' } : {}}\n >\n <div\n className={this._classNames.calloutContentX}\n {...getAccessibleDataObject(calloutProps!.xAxisCalloutAccessibilityData, 'text', false)}\n >\n {convertToLocaleString(calloutProps!.hoverXValue, this.props.culture)}\n </div>\n </div>\n <div\n className={this._classNames.calloutInfoContainer}\n style={yValueHoverSubCountsExists ? { display: 'flex' } : {}}\n >\n {calloutProps!.YValueHover &&\n calloutProps!.YValueHover.map((yValue: IYValueHover, index: number, yValues: IYValueHover[]) => {\n const isLast: boolean = index + 1 === yValues.length;\n const { shouldDrawBorderBottom = false } = yValue;\n return (\n <div\n {...getAccessibleDataObject(yValue.callOutAccessibilityData, 'text', false)}\n key={`callout-content-${index}`}\n style={\n yValueHoverSubCountsExists\n ? {\n display: 'inline-block',\n ...(shouldDrawBorderBottom && {\n borderBottom: `1px solid ${this.props.theme!.semanticColors.menuDivider}`,\n paddingBottom: '10px',\n }),\n }\n : {\n ...(shouldDrawBorderBottom && {\n borderBottom: `1px solid ${this.props.theme!.semanticColors.menuDivider}`,\n paddingBottom: '10px',\n }),\n }\n }\n >\n {this._getCalloutContent(yValue, index, yValueHoverSubCountsExists, isLast)}\n </div>\n );\n })}\n {!!calloutProps.descriptionMessage && (\n <div className={this._classNames.descriptionMessage}>{calloutProps.descriptionMessage}</div>\n )}\n </div>\n </div>\n );\n };\n\n private _yValueHoverSubCountsExists(yValueHover?: IYValueHover[]) {\n if (yValueHover) {\n return yValueHover.some(\n (yValue: {\n legend?: string;\n y?: number;\n color?: string;\n yAxisCalloutData?: string | { [id: string]: number };\n }) => yValue.yAxisCalloutData && typeof yValue.yAxisCalloutData !== 'string',\n );\n }\n return false;\n }\n\n private _getCalloutContent(\n xValue: IYValueHover,\n index: number,\n yValueHoverSubCountsExists: boolean,\n isLast: boolean,\n ): React.ReactNode {\n const marginStyle: React.CSSProperties = isLast ? {} : { marginRight: '16px' };\n const toDrawShape = xValue.index !== undefined && xValue.index !== -1;\n const _classNames = getClassNames(this.props.styles!, {\n theme: this.props.theme!,\n width: this.state._width,\n height: this.state._height,\n className: this.props.className,\n isRtl: this._isRtl,\n lineColor: xValue.color,\n toDrawShape,\n });\n\n const { culture } = this.props;\n const yValue = convertToLocaleString(xValue.y, culture);\n if (!xValue.yAxisCalloutData || typeof xValue.yAxisCalloutData === 'string') {\n return (\n <div style={yValueHoverSubCountsExists ? marginStyle : {}}>\n {yValueHoverSubCountsExists && (\n <div className=\"ms-fontWeight-semibold\" style={{ fontSize: '12pt' }}>\n {xValue.legend!} ({yValue})\n </div>\n )}\n <div id={`${index}_${xValue.y}`} className={_classNames.calloutBlockContainer}>\n {toDrawShape && (\n <Shape\n svgProps={{\n className: _classNames.shapeStyles,\n }}\n pathProps={{ fill: xValue.color }}\n shape={Points[xValue.index! % Object.keys(pointTypes).length] as LegendShape}\n />\n )}\n <div>\n <div className={_classNames.calloutlegendText}> {xValue.legend}</div>\n <div className={_classNames.calloutContentY}>\n {convertToLocaleString(\n xValue.yAxisCalloutData ? xValue.yAxisCalloutData : xValue.y || xValue.data,\n culture,\n )}\n </div>\n </div>\n </div>\n </div>\n );\n } else {\n const subcounts: { [id: string]: number } = xValue.yAxisCalloutData as { [id: string]: number };\n return (\n <div style={marginStyle}>\n <div className=\"ms-fontWeight-semibold\" style={{ fontSize: '12pt' }}>\n {xValue.legend!} ({yValue})\n </div>\n {Object.keys(subcounts).map((subcountName: string) => {\n return (\n <div key={subcountName} className={_classNames.calloutBlockContainer}>\n <div className={_classNames.calloutlegendText}> {convertToLocaleString(subcountName, culture)}</div>\n <div className={_classNames.calloutContentY}>\n {convertToLocaleString(subcounts[subcountName], culture)}\n </div>\n </div>\n );\n })}\n </div>\n );\n }\n }\n\n /**\n * When screen resizes, along with screen, chart also auto adjusted.\n * This method used to adjust height and width of the charts.\n */\n private _fitParentContainer(): void {\n const { containerWidth, containerHeight } = this.state;\n this._reqID = requestAnimationFrame(() => {\n let legendContainerHeight;\n if (this.props.hideLegend) {\n // If there is no legend, need not to allocate some space from total chart space.\n legendContainerHeight = 0;\n } else {\n const legendContainerComputedStyles = this.legendContainer && getComputedStyle(this.legendContainer);\n legendContainerHeight =\n ((this.legendContainer && this.legendContainer.getBoundingClientRect().height) ||\n this.minLegendContainerHeight) +\n parseFloat((legendContainerComputedStyles && legendContainerComputedStyles.marginTop) || '0') +\n parseFloat((legendContainerComputedStyles && legendContainerComputedStyles.marginBottom) || '0');\n }\n if (this.props.parentRef || this.chartContainer) {\n const container = this.props.parentRef ? this.props.parentRef : this.chartContainer;\n const currentContainerWidth = container.getBoundingClientRect().width;\n const currentContainerHeight =\n container.getBoundingClientRect().height > legendContainerHeight\n ? container.getBoundingClientRect().height\n : 350;\n const shouldResize =\n containerWidth !== currentContainerWidth ||\n containerHeight !== currentContainerHeight - legendContainerHeight;\n if (shouldResize) {\n this.setState({\n containerWidth: currentContainerWidth,\n containerHeight: currentContainerHeight - legendContainerHeight,\n });\n }\n }\n });\n }\n\n // Call back to the chart.\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private _getData = (xScale: any, yScale: any) => {\n this.props.getGraphData &&\n this.props.getGraphData(\n xScale,\n yScale,\n this.state.containerHeight - this.state._removalValueForTextTuncate!,\n this.state.containerWidth,\n this.xAxisElement,\n this.yAxisElement,\n );\n };\n\n private _onChartLeave = (): void => {\n this.props.onChartMouseLeave && this.props.onChartMouseLeave();\n };\n}\n"]}
|
|
1
|
+
{"version":3,"file":"CartesianChart.base.js","sourceRoot":"../src/","sources":["components/CommonComponents/CartesianChart.base.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { IProcessedStyleSet } from '@fluentui/react/lib/Styling';\nimport { classNamesFunction, getId, getRTL } from '@fluentui/react/lib/Utilities';\nimport { Callout } from '@fluentui/react/lib/Callout';\nimport { FocusZone, FocusZoneDirection } from '@fluentui/react-focus';\nimport {\n ICartesianChartStyles,\n ICartesianChartStyleProps,\n IModifiedCartesianChartProps,\n IYValueHover,\n} from '../../index';\nimport {\n ChartHoverCard,\n convertToLocaleString,\n createNumericXAxis,\n createStringXAxis,\n IAxisData,\n getAccessibleDataObject,\n getDomainNRangeValues,\n createDateXAxis,\n createYAxis,\n createStringYAxis,\n IMargins,\n getMinMaxOfYAxis,\n XAxisTypes,\n YAxisType,\n createWrapOfXLabels,\n rotateXAxisLabels,\n Points,\n pointTypes,\n calculateLongestYAxisLabel,\n createYAxisLabels,\n ChartTypes,\n} from '../../utilities/index';\nimport { LegendShape, Shape } from '../Legends/index';\n\nconst getClassNames = classNamesFunction<ICartesianChartStyleProps, ICartesianChartStyles>();\n\nexport interface ICartesianChartState {\n containerWidth: number;\n containerHeight: number;\n _width: number;\n _height: number;\n /* To update this values using setState in render method.\n * To avoid multiple re renders, Only first time setting the value.\n */\n isRemoveValCalculated?: boolean;\n /* Used for when WrapXAxisLabels props appeared.\n * To display the total word (space separated words), Need to have more space than usual.\n * This height will get total height need to disaply total word.\n * These value need to be removed from actual svg height/graph height.\n * Defalut value is 0. And this values calculted when 'wrapXAxisLables' or 'showXAxisLablesTooltip' is true.\n */\n _removalValueForTextTuncate?: number;\n startFromX: number;\n}\n\n/**\n * Cartesian chart used for\n * 1.draw X and Y axis of the chart\n * 2.Callout\n * 3.Fit parent Continer\n */\nexport class CartesianChartBase extends React.Component<IModifiedCartesianChartProps, ICartesianChartState> {\n private _classNames: IProcessedStyleSet<ICartesianChartStyles>;\n private chartContainer: HTMLDivElement;\n private legendContainer: HTMLDivElement;\n private minLegendContainerHeight: number = 32;\n private xAxisElement: SVGElement | null;\n private yAxisElement: SVGElement | null;\n private yAxisElementSecondary: SVGElement | null;\n private margins: IMargins;\n private idForGraph: string;\n private _reqID: number;\n private _isRtl: boolean = getRTL();\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private _xScale: any;\n\n constructor(props: IModifiedCartesianChartProps) {\n super(props);\n this.state = {\n containerHeight: 0,\n containerWidth: 0,\n _width: this.props.width || 600,\n _height: this.props.height || 350,\n _removalValueForTextTuncate: 0,\n isRemoveValCalculated: true,\n startFromX: 0,\n };\n this.idForGraph = getId('chart_');\n /**\n * In RTL mode, Only graph will be rendered left/right. We need to provide left and right margins manually.\n * So that, in RTL, left margins becomes right margins and viceversa.\n * As graph needs to be drawn perfecty, these values consider as default values.\n * Same margins using for all other cartesian charts. Can be accessible through 'getMargins' call back method.\n */\n this.margins = {\n top: this.props.margins?.top ?? 20,\n bottom: this.props.margins?.bottom ?? 35,\n right: this._isRtl\n ? this.props.margins?.left ?? 40\n : this.props.margins?.right ?? this.props?.secondaryYScaleOptions\n ? 40\n : 20,\n left: this._isRtl\n ? this.props.margins?.right ?? this.props?.secondaryYScaleOptions\n ? 40\n : 20\n : this.props.margins?.left ?? 40,\n };\n }\n\n public componentDidMount(): void {\n this._fitParentContainer();\n if (\n this.props.chartType === ChartTypes.HorizontalBarChartWithAxis &&\n this.props.showYAxisLables &&\n this.yAxisElement\n ) {\n const maxYAxisLabelLength = calculateLongestYAxisLabel(this.props.points, this.yAxisElement!);\n if (this.state.startFromX !== maxYAxisLabelLength) {\n this.setState({\n startFromX: maxYAxisLabelLength,\n });\n }\n } else if (this.state.startFromX !== 0) {\n this.setState({\n startFromX: 0,\n });\n }\n }\n\n public componentWillUnmount(): void {\n cancelAnimationFrame(this._reqID);\n }\n\n public componentDidUpdate(prevProps: IModifiedCartesianChartProps): void {\n if (prevProps.height !== this.props.height || prevProps.width !== this.props.width) {\n this._fitParentContainer();\n }\n\n if (\n !this.props.wrapXAxisLables &&\n this.props.rotateXAxisLables &&\n this.props.xAxisType! === XAxisTypes.StringAxis\n ) {\n const rotateLabelProps = {\n node: this.xAxisElement,\n xAxis: this._xScale,\n };\n const rotatedHeight = rotateXAxisLabels(rotateLabelProps);\n if (\n this.state.isRemoveValCalculated &&\n this.state._removalValueForTextTuncate !== rotatedHeight! + this.margins.bottom! &&\n rotatedHeight! > 0\n ) {\n this.setState({\n _removalValueForTextTuncate: rotatedHeight! + this.margins.bottom!,\n isRemoveValCalculated: false,\n });\n }\n }\n if (\n this.props.chartType === ChartTypes.HorizontalBarChartWithAxis &&\n this.props.showYAxisLables &&\n this.yAxisElement\n ) {\n const maxYAxisLabelLength = calculateLongestYAxisLabel(this.props.points, this.yAxisElement!);\n if (this.state.startFromX !== maxYAxisLabelLength) {\n this.setState({\n startFromX: maxYAxisLabelLength,\n });\n }\n } else if (this.state.startFromX !== 0) {\n this.setState({\n startFromX: 0,\n });\n }\n }\n\n public render(): JSX.Element {\n const {\n calloutProps,\n points,\n chartType,\n chartHoverProps,\n svgFocusZoneProps,\n svgProps,\n culture,\n dateLocalizeOptions,\n timeFormatLocale,\n customDateTimeFormatter,\n } = this.props;\n if (this.props.parentRef) {\n this._fitParentContainer();\n }\n\n const margin = { ...this.margins };\n if (this.props.chartType === ChartTypes.HorizontalBarChartWithAxis) {\n if (!this._isRtl) {\n margin.left! += this.state.startFromX;\n } else {\n margin.right! += this.state.startFromX;\n }\n }\n // Callback for margins to the chart\n this.props.getmargins && this.props.getmargins(margin);\n\n const XAxisParams = {\n domainNRangeValues: getDomainNRangeValues(\n points,\n this.props.getDomainMargins ? this.props.getDomainMargins(this.state.containerWidth) : this.margins,\n this.state.containerWidth,\n chartType,\n this._isRtl,\n this.props.xAxisType,\n this.props.barwidth!,\n this.props.tickValues!,\n // This is only used for Horizontal Bar Chart with Axis for y as string axis\n this.state.startFromX,\n ),\n containerHeight: this.state.containerHeight - this.state._removalValueForTextTuncate!,\n margins: this.margins,\n xAxisElement: this.xAxisElement!,\n showRoundOffXTickValues: true,\n xAxisCount: this.props.xAxisTickCount,\n xAxistickSize: this.props.xAxistickSize,\n tickPadding: this.props.tickPadding || this.props.showXAxisLablesTooltip ? 5 : 10,\n xAxisPadding: this.props.xAxisPadding,\n xAxisInnerPadding: this.props.xAxisInnerPadding,\n xAxisOuterPadding: this.props.xAxisOuterPadding,\n };\n\n const YAxisParams = {\n margins: this.margins,\n containerWidth: this.state.containerWidth,\n containerHeight: this.state.containerHeight - this.state._removalValueForTextTuncate!,\n yAxisElement: this.yAxisElement,\n yAxisTickFormat: this.props.yAxisTickFormat!,\n yAxisTickCount: this.props.yAxisTickCount!,\n yMinValue: this.props.yMinValue || 0,\n yMaxValue: this.props.yMaxValue || 0,\n tickPadding: 10,\n maxOfYVal: this.props.maxOfYVal,\n yMinMaxValues: getMinMaxOfYAxis(points, chartType, this.props.yAxisType),\n // please note these padding default values must be consistent in here\n // and the parent chart(HBWA/Vertical etc..) for more details refer example\n // http://using-d3js.com/04_07_ordinal_scales.html\n yAxisPadding: this.props.yAxisPadding || 0,\n };\n /**\n * These scales used for 2 purposes.\n * 1. To create x and y axis\n * 2. To draw the graph.\n * For area/line chart using same scales. For other charts, creating their own scales to draw the graph.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let xScale: any;\n switch (this.props.xAxisType!) {\n case XAxisTypes.NumericAxis:\n xScale = createNumericXAxis(XAxisParams, this.props.chartType, culture);\n break;\n case XAxisTypes.DateAxis:\n xScale = createDateXAxis(\n XAxisParams,\n this.props.tickParams!,\n culture,\n dateLocalizeOptions,\n timeFormatLocale,\n customDateTimeFormatter,\n );\n break;\n case XAxisTypes.StringAxis:\n xScale = createStringXAxis(XAxisParams, this.props.tickParams!, this.props.datasetForXAxisDomain!, culture);\n break;\n default:\n xScale = createNumericXAxis(XAxisParams, this.props.chartType, culture);\n }\n this._xScale = xScale;\n\n /*\n * To enable wrapping of x axis tick values or to display complete x axis tick values,\n * we need to calculate how much space it needed to render the text.\n * No need to re-calculate every time the chart renders and same time need to get an update. So using setState.\n * Required space will be calculated first time chart rendering and if any width/height of chart updated.\n * */\n if (this.props.wrapXAxisLables || this.props.showXAxisLablesTooltip) {\n const wrapLabelProps = {\n node: this.xAxisElement,\n xAxis: xScale,\n showXAxisLablesTooltip: this.props.showXAxisLablesTooltip || false,\n noOfCharsToTruncate: this.props.noOfCharsToTruncate || 4,\n };\n const temp = xScale && (createWrapOfXLabels(wrapLabelProps) as number);\n // this value need to be updated for draw graph updated. So instead of using private value, using set state.\n if (this.state.isRemoveValCalculated && this.state._removalValueForTextTuncate !== temp) {\n this.setState({ _removalValueForTextTuncate: temp, isRemoveValCalculated: false });\n }\n }\n\n /**\n * These scales used for 2 purposes.\n * 1. To create x and y axis\n * 2. To draw the graph.\n * For area/line chart using same scales. For other charts, creating their own scales to draw the graph.\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let yScale: any;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n let yScaleSecondary: any;\n const axisData: IAxisData = { yAxisDomainValues: [] };\n if (this.props.yAxisType && this.props.yAxisType === YAxisType.StringAxis) {\n yScale = createStringYAxis(\n YAxisParams,\n this.props.stringDatasetForYAxisDomain!,\n this._isRtl,\n this.props.chartType,\n this.props.barwidth,\n culture,\n );\n } else {\n if (this.props?.secondaryYScaleOptions) {\n const YAxisParamsSecondary = {\n margins: this.margins,\n containerWidth: this.state.containerWidth,\n containerHeight: this.state.containerHeight - this.state._removalValueForTextTuncate!,\n yAxisElement: this.yAxisElementSecondary,\n yAxisTickFormat: this.props.yAxisTickFormat!,\n yAxisTickCount: this.props.yAxisTickCount!,\n yMinValue: this.props.secondaryYScaleOptions?.yMinValue || 0,\n yMaxValue: this.props.secondaryYScaleOptions?.yMaxValue ?? 100,\n tickPadding: 10,\n maxOfYVal: this.props.secondaryYScaleOptions?.yMaxValue ?? 100,\n yMinMaxValues: getMinMaxOfYAxis(points, chartType),\n yAxisPadding: this.props.yAxisPadding,\n };\n\n yScaleSecondary = createYAxis(\n YAxisParamsSecondary,\n this._isRtl,\n axisData,\n chartType,\n this.props.barwidth!,\n true,\n );\n }\n yScale = createYAxis(YAxisParams, this._isRtl, axisData, chartType, this.props.barwidth!);\n }\n\n /*\n * To create y axis tick values by if specified\n truncating the rest of the text and showing elipsis\n or showing the whole string,\n * */\n this.props.chartType === ChartTypes.HorizontalBarChartWithAxis &&\n yScale &&\n createYAxisLabels(\n this.yAxisElement,\n yScale,\n this.props.noOfCharsToTruncate || 4,\n this.props.showYAxisLablesTooltip || false,\n this.state.startFromX,\n this._isRtl,\n );\n\n this.props.getAxisData && this.props.getAxisData(axisData);\n // Callback function for chart, returns axis\n this._getData(xScale, yScale);\n\n this._classNames = getClassNames(this.props.styles!, {\n theme: this.props.theme!,\n width: this.state._width,\n height: this.state._height,\n className: this.props.className,\n isRtl: this._isRtl,\n });\n\n const svgDimensions = {\n width: this.state.containerWidth,\n height: this.state.containerHeight,\n };\n\n const children = this.props.children({\n ...this.state,\n xScale,\n yScale,\n yScaleSecondary,\n });\n\n let focusDirection;\n if (this.props.focusZoneDirection === FocusZoneDirection.vertical) {\n focusDirection = this.props.focusZoneDirection;\n } else if (this.props.focusZoneDirection) {\n focusDirection = this.props.focusZoneDirection;\n } else {\n focusDirection = FocusZoneDirection.horizontal;\n }\n return (\n <div\n id={this.idForGraph}\n className={this._classNames.root}\n role={'presentation'}\n ref={(rootElem: HTMLDivElement) => (this.chartContainer = rootElem)}\n onMouseLeave={this._onChartLeave}\n >\n <FocusZone direction={focusDirection} {...svgFocusZoneProps}>\n <svg\n width={svgDimensions.width}\n height={svgDimensions.height}\n aria-label={this.props.chartTitle}\n style={{ display: 'block' }}\n {...svgProps}\n >\n <g\n ref={(e: SVGElement | null) => {\n this.xAxisElement = e;\n }}\n id={`xAxisGElement${this.idForGraph}`}\n // To add wrap of x axis lables feature, need to remove word height from svg height.\n transform={`translate(0, ${\n svgDimensions.height - this.margins.bottom! - this.state._removalValueForTextTuncate!\n })`}\n className={this._classNames.xAxis}\n />\n <g\n ref={(e: SVGElement | null) => {\n this.yAxisElement = e;\n }}\n id={`yAxisGElement${this.idForGraph}`}\n transform={`translate(${\n this._isRtl\n ? svgDimensions.width - this.margins.right! - this.state.startFromX\n : this.margins.left! + this.state.startFromX\n }, 0)`}\n className={this._classNames.yAxis}\n />\n {this.props.secondaryYScaleOptions && (\n <g\n ref={(e: SVGElement | null) => {\n this.yAxisElementSecondary = e;\n }}\n id={`yAxisGElementSecondary${this.idForGraph}`}\n transform={`translate(${\n this._isRtl ? this.margins.left! : svgDimensions.width - this.margins.right!\n }, 0)`}\n className={this._classNames.yAxis}\n />\n )}\n {children}\n </svg>\n </FocusZone>\n {!this.props.hideLegend && (\n <div ref={(e: HTMLDivElement) => (this.legendContainer = e)} className={this._classNames.legendContainer}>\n {this.props.legendBars}\n </div>\n )}\n {/** The callout is used for narration, so keep it mounted on the DOM */}\n <Callout\n hidden={!(!this.props.hideTooltip && calloutProps!.isCalloutVisible)}\n /** Keep the callout updated with details of focused/hovered chart element */\n shouldUpdateWhenHidden={true}\n {...calloutProps}\n >\n {/** Given custom callout, then it will render */}\n {this.props.customizedCallout && this.props.customizedCallout}\n {/** single x point its corresponding y points of all the bars/lines in chart will render in callout */}\n {!this.props.customizedCallout && this.props.isCalloutForStack && this._multiValueCallout(calloutProps)}\n {/** single x point its corresponding y point of single line/bar in the chart will render in callout */}\n {!this.props.customizedCallout && !this.props.isCalloutForStack && (\n <ChartHoverCard\n XValue={calloutProps.XValue}\n Legend={calloutProps.legend!}\n YValue={calloutProps.YValue!}\n color={calloutProps.color!}\n culture={this.props.culture}\n {...chartHoverProps}\n />\n )}\n </Callout>\n </div>\n );\n }\n\n // TO DO: Write a common functional component for Multi value callout and divide sub count method\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private _multiValueCallout = (calloutProps: any) => {\n const yValueHoverSubCountsExists: boolean = this._yValueHoverSubCountsExists(calloutProps.YValueHover);\n return (\n <div className={this._classNames.calloutContentRoot}>\n <div\n className={this._classNames.calloutDateTimeContainer}\n style={yValueHoverSubCountsExists ? { marginBottom: '11px' } : {}}\n >\n <div\n className={this._classNames.calloutContentX}\n {...getAccessibleDataObject(calloutProps!.xAxisCalloutAccessibilityData, 'text', false)}\n >\n {convertToLocaleString(calloutProps!.hoverXValue, this.props.culture)}\n </div>\n </div>\n <div\n className={this._classNames.calloutInfoContainer}\n style={yValueHoverSubCountsExists ? { display: 'flex' } : {}}\n >\n {calloutProps!.YValueHover &&\n calloutProps!.YValueHover.map((yValue: IYValueHover, index: number, yValues: IYValueHover[]) => {\n const isLast: boolean = index + 1 === yValues.length;\n const { shouldDrawBorderBottom = false } = yValue;\n return (\n <div\n {...getAccessibleDataObject(yValue.callOutAccessibilityData, 'text', false)}\n key={`callout-content-${index}`}\n style={\n yValueHoverSubCountsExists\n ? {\n display: 'inline-block',\n ...(shouldDrawBorderBottom && {\n borderBottom: `1px solid ${this.props.theme!.semanticColors.menuDivider}`,\n paddingBottom: '10px',\n }),\n }\n : {\n ...(shouldDrawBorderBottom && {\n borderBottom: `1px solid ${this.props.theme!.semanticColors.menuDivider}`,\n paddingBottom: '10px',\n }),\n }\n }\n >\n {this._getCalloutContent(yValue, index, yValueHoverSubCountsExists, isLast)}\n </div>\n );\n })}\n {!!calloutProps.descriptionMessage && (\n <div className={this._classNames.descriptionMessage}>{calloutProps.descriptionMessage}</div>\n )}\n </div>\n </div>\n );\n };\n\n private _yValueHoverSubCountsExists(yValueHover?: IYValueHover[]) {\n if (yValueHover) {\n return yValueHover.some(\n (yValue: {\n legend?: string;\n y?: number;\n color?: string;\n yAxisCalloutData?: string | { [id: string]: number };\n }) => yValue.yAxisCalloutData && typeof yValue.yAxisCalloutData !== 'string',\n );\n }\n return false;\n }\n\n private _getCalloutContent(\n xValue: IYValueHover,\n index: number,\n yValueHoverSubCountsExists: boolean,\n isLast: boolean,\n ): React.ReactNode {\n const marginStyle: React.CSSProperties = isLast ? {} : { marginRight: '16px' };\n const toDrawShape = xValue.index !== undefined && xValue.index !== -1;\n const _classNames = getClassNames(this.props.styles!, {\n theme: this.props.theme!,\n width: this.state._width,\n height: this.state._height,\n className: this.props.className,\n isRtl: this._isRtl,\n lineColor: xValue.color,\n toDrawShape,\n });\n\n const { culture } = this.props;\n const yValue = convertToLocaleString(xValue.y, culture);\n if (!xValue.yAxisCalloutData || typeof xValue.yAxisCalloutData === 'string') {\n return (\n <div style={yValueHoverSubCountsExists ? marginStyle : {}}>\n {yValueHoverSubCountsExists && (\n <div className=\"ms-fontWeight-semibold\" style={{ fontSize: '12pt' }}>\n {xValue.legend!} ({yValue})\n </div>\n )}\n <div id={`${index}_${xValue.y}`} className={_classNames.calloutBlockContainer}>\n {toDrawShape && (\n <Shape\n svgProps={{\n className: _classNames.shapeStyles,\n }}\n pathProps={{ fill: xValue.color }}\n shape={Points[xValue.index! % Object.keys(pointTypes).length] as LegendShape}\n />\n )}\n <div>\n <div className={_classNames.calloutlegendText}> {xValue.legend}</div>\n <div className={_classNames.calloutContentY}>\n {convertToLocaleString(\n xValue.yAxisCalloutData ? xValue.yAxisCalloutData : xValue.y || xValue.data,\n culture,\n )}\n </div>\n </div>\n </div>\n </div>\n );\n } else {\n const subcounts: { [id: string]: number } = xValue.yAxisCalloutData as { [id: string]: number };\n return (\n <div style={marginStyle}>\n <div className=\"ms-fontWeight-semibold\" style={{ fontSize: '12pt' }}>\n {xValue.legend!} ({yValue})\n </div>\n {Object.keys(subcounts).map((subcountName: string) => {\n return (\n <div key={subcountName} className={_classNames.calloutBlockContainer}>\n <div className={_classNames.calloutlegendText}> {convertToLocaleString(subcountName, culture)}</div>\n <div className={_classNames.calloutContentY}>\n {convertToLocaleString(subcounts[subcountName], culture)}\n </div>\n </div>\n );\n })}\n </div>\n );\n }\n }\n\n /**\n * When screen resizes, along with screen, chart also auto adjusted.\n * This method used to adjust height and width of the charts.\n */\n private _fitParentContainer(): void {\n const { containerWidth, containerHeight } = this.state;\n this._reqID = requestAnimationFrame(() => {\n let legendContainerHeight;\n if (this.props.hideLegend) {\n // If there is no legend, need not to allocate some space from total chart space.\n legendContainerHeight = 0;\n } else {\n const legendContainerComputedStyles = this.legendContainer && getComputedStyle(this.legendContainer);\n legendContainerHeight =\n ((this.legendContainer && this.legendContainer.getBoundingClientRect().height) ||\n this.minLegendContainerHeight) +\n parseFloat((legendContainerComputedStyles && legendContainerComputedStyles.marginTop) || '0') +\n parseFloat((legendContainerComputedStyles && legendContainerComputedStyles.marginBottom) || '0');\n }\n if (this.props.parentRef || this.chartContainer) {\n const container = this.props.parentRef ? this.props.parentRef : this.chartContainer;\n const currentContainerWidth = container.getBoundingClientRect().width;\n const currentContainerHeight =\n container.getBoundingClientRect().height > legendContainerHeight\n ? container.getBoundingClientRect().height\n : 350;\n const shouldResize =\n containerWidth !== currentContainerWidth ||\n containerHeight !== currentContainerHeight - legendContainerHeight;\n if (shouldResize) {\n this.setState({\n containerWidth: currentContainerWidth,\n containerHeight: currentContainerHeight - legendContainerHeight,\n });\n }\n }\n });\n }\n\n // Call back to the chart.\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private _getData = (xScale: any, yScale: any) => {\n this.props.getGraphData &&\n this.props.getGraphData(\n xScale,\n yScale,\n this.state.containerHeight - this.state._removalValueForTextTuncate!,\n this.state.containerWidth,\n this.xAxisElement,\n this.yAxisElement,\n );\n };\n\n private _onChartLeave = (): void => {\n this.props.onChartMouseLeave && this.props.onChartMouseLeave();\n };\n}\n"]}
|
|
@@ -249,8 +249,9 @@ var LayeredTree = /** @class */ (function (_super) {
|
|
|
249
249
|
var TreeChartBase = /** @class */ (function (_super) {
|
|
250
250
|
__extends(TreeChartBase, _super);
|
|
251
251
|
function TreeChartBase(props) {
|
|
252
|
+
var _this = this;
|
|
252
253
|
var _a;
|
|
253
|
-
|
|
254
|
+
_this = _super.call(this, props) || this;
|
|
254
255
|
_this._nodeElements = [];
|
|
255
256
|
_this._linkElements = [];
|
|
256
257
|
_this._margin = { top: 30, right: 20, bottom: 30, left: 50 };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TreeChart.base.js","sourceRoot":"../src/","sources":["components/TreeChart/TreeChart.base.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { hierarchy, tree } from 'd3-hierarchy';\nimport { classNamesFunction } from '@fluentui/react/lib/Utilities';\nimport { IProcessedStyleSet } from '@fluentui/react/lib/Styling';\nimport { select, selectAll } from 'd3-selection';\nimport { FocusZone } from '@fluentui/react-focus';\nimport { max as d3Max, min as d3Min } from 'd3-array';\n\nimport {\n ITreeProps,\n ITreeState,\n ITreeDataStructure,\n ITreeChartDataPoint,\n ITreeStyleProps,\n ITreeStyles,\n} from '../../index';\n\nconst getClassNames = classNamesFunction<ITreeStyleProps, ITreeStyles>();\n\n// Create a parent class for common tree components\nclass StandardTree {\n public treeData: ITreeChartDataPoint;\n public styleClassNames: IProcessedStyleSet<ITreeStyles>;\n\n private _nodeElements: JSX.Element[] = [];\n private _linkElements: JSX.Element[] = [];\n\n constructor(\n treeData: ITreeChartDataPoint,\n styleClassNames: IProcessedStyleSet<ITreeStyles>,\n _nodeElements: JSX.Element[] = [],\n _linkElements: JSX.Element[] = [],\n ) {\n this.treeData = treeData;\n this.styleClassNames = styleClassNames;\n this._nodeElements = _nodeElements;\n this._linkElements = _linkElements;\n }\n\n public truncateText(text: string, rectangleWidth: number, padding: number, styleClass: string | undefined) {\n let truncatedText = '';\n const words = text.split(/\\s+/).reverse();\n let word: string = '';\n const tspan = select('.svgTree').append('text').attr('class', 'tempText').append('tspan').text(null);\n\n if (styleClass) {\n tspan.attr('class', styleClass);\n }\n\n const line: string[] = [];\n while ((word = words.pop()!)) {\n line.push(word);\n tspan.text(line.join(' ') + ' ');\n if (tspan.node() !== null) {\n const w = tspan.node()!.getComputedTextLength();\n if (w > rectangleWidth - padding) {\n line.pop();\n line.push('...');\n break;\n }\n }\n }\n\n truncatedText = line.join(' ') + ' ';\n tspan.text(null);\n selectAll('.tempText').remove();\n return truncatedText;\n }\n\n // Append node elements\n // nodeId to create unique key\n public addNodeShapetoSVG(\n name: string,\n subname: string | undefined,\n bodytext: string | undefined,\n metricName: string | undefined,\n xCenterCoordinate: number,\n yCoordinate: number,\n fillColor: string,\n rectangleWidth: number,\n rectangleHeight: number,\n nodeId: number,\n parentInfo: string,\n ) {\n const ariaLabel = `nodeId: ${nodeId} \\nnodeMainText: ${name}\\nsubText ${subname} ${parentInfo}`;\n const xCoordinate = xCenterCoordinate - rectangleWidth / 2;\n if (metricName || nodeId !== 0 || !bodytext) {\n this._nodeElements.push(\n <rect\n width={rectangleWidth}\n height={rectangleHeight}\n x={xCoordinate}\n y={yCoordinate}\n tabIndex={0}\n role={'text'}\n data-is-focusable={true}\n aria-label={ariaLabel}\n className={this.styleClassNames.rectNode}\n stroke={fillColor}\n key={`${nodeId}${this.styleClassNames.rectNode}`}\n />,\n );\n }\n\n if (subname) {\n subname = this.truncateText(subname, rectangleWidth, rectangleWidth / 4, this.styleClassNames.rectSubText);\n }\n if (bodytext) {\n bodytext = this.truncateText(bodytext, rectangleWidth, rectangleWidth / 4, this.styleClassNames.rectBodyText);\n }\n if (metricName) {\n metricName = this.truncateText(\n metricName,\n rectangleWidth,\n rectangleWidth / 4,\n this.styleClassNames.rectMetricText,\n );\n }\n name = this.truncateText(name, rectangleWidth, rectangleWidth / 4, this.styleClassNames.rectText);\n\n // Text position y = y + rectHeight/2, 2 is ratio for depth\n // Text position x = x + rectWidth/2, 2 is ratio for length\n // Sub-text position x = x + rectWidth/2, 2 is ratio for length\n\n const subValue = metricName ? (\n <tspan className={this.styleClassNames.rectMetricText} dy=\"1.4em\" x={xCoordinate + rectangleWidth / 2}>\n {metricName}\n </tspan>\n ) : bodytext ? (\n <>\n <tspan className={this.styleClassNames.rectSubText} dy=\"1.4em\" x={xCoordinate + rectangleWidth / 2}>\n {subname}\n </tspan>\n <tspan className={this.styleClassNames.rectBodyText} dy=\"1.4em\" x={xCoordinate + rectangleWidth / 2}>\n {bodytext}\n </tspan>\n </>\n ) : (\n <tspan className={this.styleClassNames.rectSubText} dy=\"1.4em\" x={xCoordinate + rectangleWidth / 2}>\n {subname}\n </tspan>\n );\n\n if (!subname && !metricName && !bodytext) {\n this._nodeElements.push(\n <text\n textAnchor=\"middle\"\n className={this.styleClassNames.rectMetricText}\n dy={yCoordinate + rectangleHeight / 1.6}\n x={xCoordinate + rectangleWidth / 2}\n key={`${nodeId}${this.styleClassNames.rectText}`}\n >\n {name}\n </text>,\n );\n } else {\n this._nodeElements.push(\n <text\n textAnchor=\"middle\"\n className={metricName ? this.styleClassNames.rectSubText : this.styleClassNames.rectText}\n dy={metricName ? yCoordinate + rectangleHeight / 2.5 : yCoordinate + rectangleHeight / 2}\n x={xCoordinate + rectangleWidth / 2}\n key={`${nodeId}${this.styleClassNames.rectText}`}\n >\n {name}\n {subValue}\n </text>,\n );\n }\n }\n // Create a rectangular path from parent to the child nodes\n public createPathLink(\n parentX: number,\n parentY: number,\n childX: number,\n childY: number,\n leaf: boolean,\n rectWidth: number,\n rectHeight: number,\n gap: number,\n childXMax: number,\n ): string {\n // gap adds ratio for parent.y to child.y\n\n /*Below code is used to draw lines(___|) to show the parent child relation i.e a vertical line\n emerging from the parent and\n then a horzontal line encompassing all the its children which are\n shown below it .so it gives a visual representation of tree branches.\n\n So for making this path firstly we are moving to the childX which is the mid point of the node and then\n we are subtracting the half of rectwidth to move the complete width of the rectangle and\n we are subtracting gap from y cordinate as we are making this line at a little gap from node.\n Then we are building that line horizonatlly till childXmax, again adding half rectwidth to complete\n the line till end as childXmax will be midpoint.\n Then last part is for making line vertical for that we move to the parentx position and\n then draw the vertical till parenty + rectHeight + gap/2\n We have seperate path for leaf node as we are using different composition like compact, long etc.*/\n\n const path = `M${childX - rectWidth / 2},${childY - gap} H${childXMax + rectWidth / 2} M${parentX},${childY - gap}\n V${parentY + rectHeight + gap / 2}`;\n\n const leafpath = `M${parentX},${parentY + rectHeight + gap / 2} V${parentY + gap * 5}\n H${parentX - rectWidth / 2} H${parentX + rectWidth / 2}`;\n\n // based on the type of node return leafpath or path element\n return leaf ? leafpath : path;\n }\n\n // Append path link element\n public addLinktoSVG(\n nodeId: number,\n parentX: number,\n parentY: number,\n childX: number,\n childY: number,\n leaf: boolean,\n rectWidth: number,\n rectHeight: number,\n gap: number,\n childXMax: number = 0,\n ) {\n this._linkElements.push(\n <path\n className={this.styleClassNames.link}\n d={this.createPathLink(parentX, parentY, childX, childY, leaf, rectWidth, rectHeight, gap, childXMax)}\n key={`${nodeId}${this.styleClassNames.link}`}\n />,\n );\n }\n}\n\n// Create child class to Add Tree component based on treeHeight\nclass LayeredTree extends StandardTree {\n public composition: number | undefined;\n private _treeTraversal: number | undefined;\n constructor(\n treeData: ITreeChartDataPoint,\n composition: number | undefined,\n styleClassNames: IProcessedStyleSet<ITreeStyles>,\n _nodeElements: JSX.Element[] = [],\n _linkElements: JSX.Element[] = [],\n _treeTraversal: number | undefined,\n ) {\n super(treeData, styleClassNames, _nodeElements, _linkElements);\n this.composition = composition;\n this._treeTraversal = _treeTraversal;\n }\n public createTree(givenLayoutWidth: number | undefined, screenWidth: number) {\n givenLayoutWidth = givenLayoutWidth! < 65 ? 65 : givenLayoutWidth! > 90 ? 90 : givenLayoutWidth;\n const layoutWidth = givenLayoutWidth || 75;\n const root = hierarchy(this.treeData, d => {\n return d.children;\n });\n\n // Find tree Height\n const treeHeight = root?.height + 1;\n\n // Create tree layout, width: layoutWidth, height: layoutWidth/1.5 and add node separation\n const treeChart = tree()\n .nodeSize([layoutWidth, layoutWidth / 1.5])\n .separation((a, b) => {\n return a.parent === root && b.parent === root ? 3.5 : 1;\n });\n\n // Assigns the x and y position for the nodes\n const treeData = treeChart(root);\n\n // Compute the new tree layout.\n const nodes = treeData.descendants();\n\n // Normalize for fixed-depth and width\n // Normalise y coordinate by depth of each node by a factor of 130\n // Normalise x coordinate by start coordinate 0 with screenSize/3\n nodes.forEach(d => {\n d.y = d.depth === 0 ? 10 : d.depth * 130;\n d.x += screenWidth / 2;\n });\n\n // <------------------ Traversal section ------------------>\n\n // Create tree data structure\n const treeDataStructure: Array<ITreeDataStructure> = [];\n let TreeID: number = 0;\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const createTreeDataStructure = (d: any) => {\n d.id = TreeID;\n treeDataStructure.push({\n id: TreeID,\n children: d.children,\n dataName: d.data.name,\n subName: d.data.subname,\n bodyText: d.data.bodytext,\n metricName: d.data?.metric,\n fill: d.data.fill,\n x: d.x,\n y: d.y,\n parentID: d.parent?.id,\n });\n TreeID++;\n };\n\n this._treeTraversal === 0\n ? root.each(d => {\n createTreeDataStructure(d);\n })\n : root.eachBefore(d => {\n createTreeDataStructure(d);\n });\n\n const rectWidth = layoutWidth * 3;\n const rectHeight = rectWidth / 3.45;\n const gap: number = 20;\n const parentSet = new Set();\n\n for (const d of treeDataStructure) {\n const parentInfo =\n d.id === 0\n ? 'Root Node'\n : `Parent info parentId: ${d.parentID}\n ${treeDataStructure[d.parentID].dataName}\n ${treeDataStructure[d.parentID].subName}`;\n\n // check for leaf nodes\n if (!d.children && !parentSet.has(d.parentID) && treeHeight === 3) {\n const compactNodeWidth = (rectWidth - gap) / 2;\n const compactNodeHeight = rectHeight;\n parentSet.add(d.parentID);\n\n // <------------------ Links section ------------------>\n this.addLinktoSVG(\n d.id,\n treeDataStructure[d.parentID].x,\n treeDataStructure[d.parentID].y,\n treeDataStructure[d.id].x,\n treeDataStructure[d.id].y,\n true,\n rectWidth,\n rectHeight,\n gap,\n );\n\n // <------------------ Nodes section ------------------>\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const children: any = treeDataStructure[d.parentID]?.children;\n\n const compactNodeCenterX1: number = treeDataStructure[d.parentID]?.x - compactNodeWidth / 2 - gap / 2;\n const compactNodeCenterX2: number = treeDataStructure[d.parentID]?.x + compactNodeWidth / 2 + gap / 2;\n const longNodeCenterX: number = treeDataStructure[d.parentID]?.x;\n let dy: number = children[0]?.y;\n\n for (let itr = 0; itr < children.length; ++itr) {\n const child = children[itr];\n\n // Given Composition\n if (this.composition !== undefined) {\n // For compact compostion\n if (this.composition === 0) {\n this.addNodeShapetoSVG(\n child.data.name,\n child.data.subname,\n child.data.bodytext,\n child.data.metricName,\n // If the leaf node count is 1 ,\n //irrespective of provided composition we should always use long composition\n itr % 2 === 0 ? (children.length === 1 ? longNodeCenterX : compactNodeCenterX1) : compactNodeCenterX2,\n dy,\n child.data.fill,\n children.length === 1 ? rectWidth : compactNodeWidth,\n rectHeight,\n child.id,\n parentInfo,\n );\n if (itr % 2 === 1) {\n dy += compactNodeHeight + gap;\n }\n }\n // For long compostion\n else {\n this.addNodeShapetoSVG(\n child.data.name,\n child.data.subname,\n child.data.bodytext,\n child.data.metricName,\n longNodeCenterX,\n dy,\n child.data.fill,\n rectWidth,\n rectHeight,\n child.id,\n parentInfo,\n );\n dy += compactNodeHeight + gap;\n }\n }\n\n // Automatic Node Composition\n else {\n if (children.length > 2) {\n this.addNodeShapetoSVG(\n child.data.name,\n child.data.subname,\n child.data.bodytext,\n child.data.metricName,\n itr % 2 === 0 ? compactNodeCenterX1 : compactNodeCenterX2,\n dy,\n child.data.fill,\n children.length === 1 ? rectWidth : compactNodeWidth,\n rectHeight,\n child.id,\n parentInfo,\n );\n if (itr % 2 === 1) {\n dy += compactNodeHeight + gap;\n }\n } else {\n this.addNodeShapetoSVG(\n child.data.name,\n child.data.subname,\n child.data.bodytext,\n child.data.metricName,\n longNodeCenterX,\n dy,\n child.data.fill,\n rectWidth,\n rectHeight,\n child.id,\n parentInfo,\n );\n dy += compactNodeHeight + gap;\n }\n }\n }\n }\n\n if (d.children || treeHeight <= 2) {\n // <------------------ Nodes section ------------------>\n // Since the height <=2 we will be using long compositon.\n this.addNodeShapetoSVG(\n d.dataName,\n d.subName,\n d.bodyText,\n d.metricName,\n d.x,\n d.y,\n d.fill,\n rectWidth,\n rectHeight,\n d.id,\n parentInfo,\n );\n\n // <------------------ Links section ------------------>\n if (d.id === 0 && d.children) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const children: any = treeDataStructure[d.id]?.children;\n const childXMin = d3Min(children, (child: ITreeDataStructure) => child.x as number)!;\n const childXMax = d3Max(children, (child: ITreeDataStructure) => child.x as number)!;\n this.addLinktoSVG(d.id, d.x, d.y, childXMin, d.children[0].y, false, rectWidth, rectHeight, gap, childXMax);\n }\n }\n }\n }\n}\n\nexport class TreeChartBase extends React.Component<ITreeProps, ITreeState> {\n private _treeData: ITreeChartDataPoint;\n private _width: number;\n private _height: number;\n private _composition: number | undefined;\n private _classNames: IProcessedStyleSet<ITreeStyles>;\n private _margin: { left: number; right: number; top: number; bottom: number };\n private _nodeElements: JSX.Element[] = [];\n private _linkElements: JSX.Element[] = [];\n private _treeTraversal: number | undefined;\n\n constructor(props: ITreeProps) {\n super(props);\n this._margin = { top: 30, right: 20, bottom: 30, left: 50 };\n this._width = this.props.width || 1500;\n this._height = this.props.height || 700;\n this._treeData = this.props.treeData;\n this._composition = this.props?.composition;\n this._treeTraversal = this.props.treeTraversal;\n\n this.state = {\n _width: this._width,\n _height: this._height,\n };\n }\n\n public componentDidMount() {\n const { theme, className, styles } = this.props;\n\n // Get classNames to create component styling\n this._classNames = getClassNames(styles!, {\n theme: theme!,\n className,\n });\n\n // Call createTreeChart function in componentDidMount\n this.createTreeChart();\n\n this.setState({\n _width: this.props.width || 1500,\n _height: this.props.height || 700,\n });\n }\n\n public componentDidUpdate(prevProps: ITreeProps): void {\n if (prevProps.layoutWidth !== this.props.layoutWidth) {\n const svgText = selectAll('text');\n const svgRect = selectAll('rect');\n const svgLink = selectAll('path');\n\n if (this._nodeElements.length === 0 && this._linkElements.length === 0) {\n svgText.remove();\n svgRect.remove();\n svgLink.remove();\n }\n\n this.createTreeChart();\n }\n }\n public createTreeChart() {\n const nodeElements: JSX.Element[] = [];\n const linkElements: JSX.Element[] = [];\n\n // Instantiate inherited class and call createTree function for the object\n const treeObject = new LayeredTree(\n this._treeData,\n this._composition,\n this._classNames,\n nodeElements,\n linkElements,\n this._treeTraversal,\n );\n const width = this.state._width - this._margin.left - this._margin.right;\n treeObject.createTree(this.props.layoutWidth, width);\n this._nodeElements = nodeElements;\n this._linkElements = linkElements;\n }\n\n public render(): JSX.Element {\n return (\n <FocusZone>\n <div className={this._classNames?.root}>\n <svg\n className=\"svgTree\"\n width={this.state._width - this._margin.left - this._margin.right}\n height={this.state._height - this._margin.top - this._margin.bottom}\n >\n <g className=\"svgNode\">{this._nodeElements.map(element => element)}</g>\n <g className=\"svgLink\">{this._linkElements.map(element => element)}</g>\n </svg>\n </div>\n </FocusZone>\n );\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"TreeChart.base.js","sourceRoot":"../src/","sources":["components/TreeChart/TreeChart.base.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { hierarchy, tree } from 'd3-hierarchy';\nimport { classNamesFunction } from '@fluentui/react/lib/Utilities';\nimport { IProcessedStyleSet } from '@fluentui/react/lib/Styling';\nimport { select, selectAll } from 'd3-selection';\nimport { FocusZone } from '@fluentui/react-focus';\nimport { max as d3Max, min as d3Min } from 'd3-array';\n\nimport {\n ITreeProps,\n ITreeState,\n ITreeDataStructure,\n ITreeChartDataPoint,\n ITreeStyleProps,\n ITreeStyles,\n} from '../../index';\n\nconst getClassNames = classNamesFunction<ITreeStyleProps, ITreeStyles>();\n\n// Create a parent class for common tree components\nclass StandardTree {\n public treeData: ITreeChartDataPoint;\n public styleClassNames: IProcessedStyleSet<ITreeStyles>;\n\n private _nodeElements: JSX.Element[] = [];\n private _linkElements: JSX.Element[] = [];\n\n constructor(\n treeData: ITreeChartDataPoint,\n styleClassNames: IProcessedStyleSet<ITreeStyles>,\n _nodeElements: JSX.Element[] = [],\n _linkElements: JSX.Element[] = [],\n ) {\n this.treeData = treeData;\n this.styleClassNames = styleClassNames;\n this._nodeElements = _nodeElements;\n this._linkElements = _linkElements;\n }\n\n public truncateText(text: string, rectangleWidth: number, padding: number, styleClass: string | undefined) {\n let truncatedText = '';\n const words = text.split(/\\s+/).reverse();\n let word: string = '';\n const tspan = select('.svgTree').append('text').attr('class', 'tempText').append('tspan').text(null);\n\n if (styleClass) {\n tspan.attr('class', styleClass);\n }\n\n const line: string[] = [];\n while ((word = words.pop()!)) {\n line.push(word);\n tspan.text(line.join(' ') + ' ');\n if (tspan.node() !== null) {\n const w = tspan.node()!.getComputedTextLength();\n if (w > rectangleWidth - padding) {\n line.pop();\n line.push('...');\n break;\n }\n }\n }\n\n truncatedText = line.join(' ') + ' ';\n tspan.text(null);\n selectAll('.tempText').remove();\n return truncatedText;\n }\n\n // Append node elements\n // nodeId to create unique key\n public addNodeShapetoSVG(\n name: string,\n subname: string | undefined,\n bodytext: string | undefined,\n metricName: string | undefined,\n xCenterCoordinate: number,\n yCoordinate: number,\n fillColor: string,\n rectangleWidth: number,\n rectangleHeight: number,\n nodeId: number,\n parentInfo: string,\n ) {\n const ariaLabel = `nodeId: ${nodeId} \\nnodeMainText: ${name}\\nsubText ${subname} ${parentInfo}`;\n const xCoordinate = xCenterCoordinate - rectangleWidth / 2;\n if (metricName || nodeId !== 0 || !bodytext) {\n this._nodeElements.push(\n <rect\n width={rectangleWidth}\n height={rectangleHeight}\n x={xCoordinate}\n y={yCoordinate}\n tabIndex={0}\n role={'text'}\n data-is-focusable={true}\n aria-label={ariaLabel}\n className={this.styleClassNames.rectNode}\n stroke={fillColor}\n key={`${nodeId}${this.styleClassNames.rectNode}`}\n />,\n );\n }\n\n if (subname) {\n subname = this.truncateText(subname, rectangleWidth, rectangleWidth / 4, this.styleClassNames.rectSubText);\n }\n if (bodytext) {\n bodytext = this.truncateText(bodytext, rectangleWidth, rectangleWidth / 4, this.styleClassNames.rectBodyText);\n }\n if (metricName) {\n metricName = this.truncateText(\n metricName,\n rectangleWidth,\n rectangleWidth / 4,\n this.styleClassNames.rectMetricText,\n );\n }\n name = this.truncateText(name, rectangleWidth, rectangleWidth / 4, this.styleClassNames.rectText);\n\n // Text position y = y + rectHeight/2, 2 is ratio for depth\n // Text position x = x + rectWidth/2, 2 is ratio for length\n // Sub-text position x = x + rectWidth/2, 2 is ratio for length\n\n const subValue = metricName ? (\n <tspan className={this.styleClassNames.rectMetricText} dy=\"1.4em\" x={xCoordinate + rectangleWidth / 2}>\n {metricName}\n </tspan>\n ) : bodytext ? (\n <>\n <tspan className={this.styleClassNames.rectSubText} dy=\"1.4em\" x={xCoordinate + rectangleWidth / 2}>\n {subname}\n </tspan>\n <tspan className={this.styleClassNames.rectBodyText} dy=\"1.4em\" x={xCoordinate + rectangleWidth / 2}>\n {bodytext}\n </tspan>\n </>\n ) : (\n <tspan className={this.styleClassNames.rectSubText} dy=\"1.4em\" x={xCoordinate + rectangleWidth / 2}>\n {subname}\n </tspan>\n );\n\n if (!subname && !metricName && !bodytext) {\n this._nodeElements.push(\n <text\n textAnchor=\"middle\"\n className={this.styleClassNames.rectMetricText}\n dy={yCoordinate + rectangleHeight / 1.6}\n x={xCoordinate + rectangleWidth / 2}\n key={`${nodeId}${this.styleClassNames.rectText}`}\n >\n {name}\n </text>,\n );\n } else {\n this._nodeElements.push(\n <text\n textAnchor=\"middle\"\n className={metricName ? this.styleClassNames.rectSubText : this.styleClassNames.rectText}\n dy={metricName ? yCoordinate + rectangleHeight / 2.5 : yCoordinate + rectangleHeight / 2}\n x={xCoordinate + rectangleWidth / 2}\n key={`${nodeId}${this.styleClassNames.rectText}`}\n >\n {name}\n {subValue}\n </text>,\n );\n }\n }\n // Create a rectangular path from parent to the child nodes\n public createPathLink(\n parentX: number,\n parentY: number,\n childX: number,\n childY: number,\n leaf: boolean,\n rectWidth: number,\n rectHeight: number,\n gap: number,\n childXMax: number,\n ): string {\n // gap adds ratio for parent.y to child.y\n\n /*Below code is used to draw lines(___|) to show the parent child relation i.e a vertical line\n emerging from the parent and\n then a horzontal line encompassing all the its children which are\n shown below it .so it gives a visual representation of tree branches.\n\n So for making this path firstly we are moving to the childX which is the mid point of the node and then\n we are subtracting the half of rectwidth to move the complete width of the rectangle and\n we are subtracting gap from y cordinate as we are making this line at a little gap from node.\n Then we are building that line horizonatlly till childXmax, again adding half rectwidth to complete\n the line till end as childXmax will be midpoint.\n Then last part is for making line vertical for that we move to the parentx position and\n then draw the vertical till parenty + rectHeight + gap/2\n We have seperate path for leaf node as we are using different composition like compact, long etc.*/\n\n const path = `M${childX - rectWidth / 2},${childY - gap} H${childXMax + rectWidth / 2} M${parentX},${childY - gap}\n V${parentY + rectHeight + gap / 2}`;\n\n const leafpath = `M${parentX},${parentY + rectHeight + gap / 2} V${parentY + gap * 5}\n H${parentX - rectWidth / 2} H${parentX + rectWidth / 2}`;\n\n // based on the type of node return leafpath or path element\n return leaf ? leafpath : path;\n }\n\n // Append path link element\n public addLinktoSVG(\n nodeId: number,\n parentX: number,\n parentY: number,\n childX: number,\n childY: number,\n leaf: boolean,\n rectWidth: number,\n rectHeight: number,\n gap: number,\n childXMax: number = 0,\n ) {\n this._linkElements.push(\n <path\n className={this.styleClassNames.link}\n d={this.createPathLink(parentX, parentY, childX, childY, leaf, rectWidth, rectHeight, gap, childXMax)}\n key={`${nodeId}${this.styleClassNames.link}`}\n />,\n );\n }\n}\n\n// Create child class to Add Tree component based on treeHeight\nclass LayeredTree extends StandardTree {\n public composition: number | undefined;\n private _treeTraversal: number | undefined;\n constructor(\n treeData: ITreeChartDataPoint,\n composition: number | undefined,\n styleClassNames: IProcessedStyleSet<ITreeStyles>,\n _nodeElements: JSX.Element[] = [],\n _linkElements: JSX.Element[] = [],\n _treeTraversal: number | undefined,\n ) {\n super(treeData, styleClassNames, _nodeElements, _linkElements);\n this.composition = composition;\n this._treeTraversal = _treeTraversal;\n }\n public createTree(givenLayoutWidth: number | undefined, screenWidth: number) {\n givenLayoutWidth = givenLayoutWidth! < 65 ? 65 : givenLayoutWidth! > 90 ? 90 : givenLayoutWidth;\n const layoutWidth = givenLayoutWidth || 75;\n const root = hierarchy(this.treeData, d => {\n return d.children;\n });\n\n // Find tree Height\n const treeHeight = root?.height + 1;\n\n // Create tree layout, width: layoutWidth, height: layoutWidth/1.5 and add node separation\n const treeChart = tree()\n .nodeSize([layoutWidth, layoutWidth / 1.5])\n .separation((a, b) => {\n return a.parent === root && b.parent === root ? 3.5 : 1;\n });\n\n // Assigns the x and y position for the nodes\n const treeData = treeChart(root);\n\n // Compute the new tree layout.\n const nodes = treeData.descendants();\n\n // Normalize for fixed-depth and width\n // Normalise y coordinate by depth of each node by a factor of 130\n // Normalise x coordinate by start coordinate 0 with screenSize/3\n nodes.forEach(d => {\n d.y = d.depth === 0 ? 10 : d.depth * 130;\n d.x += screenWidth / 2;\n });\n\n // <------------------ Traversal section ------------------>\n\n // Create tree data structure\n const treeDataStructure: Array<ITreeDataStructure> = [];\n let TreeID: number = 0;\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const createTreeDataStructure = (d: any) => {\n d.id = TreeID;\n treeDataStructure.push({\n id: TreeID,\n children: d.children,\n dataName: d.data.name,\n subName: d.data.subname,\n bodyText: d.data.bodytext,\n metricName: d.data?.metric,\n fill: d.data.fill,\n x: d.x,\n y: d.y,\n parentID: d.parent?.id,\n });\n TreeID++;\n };\n\n this._treeTraversal === 0\n ? root.each(d => {\n createTreeDataStructure(d);\n })\n : root.eachBefore(d => {\n createTreeDataStructure(d);\n });\n\n const rectWidth = layoutWidth * 3;\n const rectHeight = rectWidth / 3.45;\n const gap: number = 20;\n const parentSet = new Set();\n\n for (const d of treeDataStructure) {\n const parentInfo =\n d.id === 0\n ? 'Root Node'\n : `Parent info parentId: ${d.parentID}\n ${treeDataStructure[d.parentID].dataName}\n ${treeDataStructure[d.parentID].subName}`;\n\n // check for leaf nodes\n if (!d.children && !parentSet.has(d.parentID) && treeHeight === 3) {\n const compactNodeWidth = (rectWidth - gap) / 2;\n const compactNodeHeight = rectHeight;\n parentSet.add(d.parentID);\n\n // <------------------ Links section ------------------>\n this.addLinktoSVG(\n d.id,\n treeDataStructure[d.parentID].x,\n treeDataStructure[d.parentID].y,\n treeDataStructure[d.id].x,\n treeDataStructure[d.id].y,\n true,\n rectWidth,\n rectHeight,\n gap,\n );\n\n // <------------------ Nodes section ------------------>\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const children: any = treeDataStructure[d.parentID]?.children;\n\n const compactNodeCenterX1: number = treeDataStructure[d.parentID]?.x - compactNodeWidth / 2 - gap / 2;\n const compactNodeCenterX2: number = treeDataStructure[d.parentID]?.x + compactNodeWidth / 2 + gap / 2;\n const longNodeCenterX: number = treeDataStructure[d.parentID]?.x;\n let dy: number = children[0]?.y;\n\n for (let itr = 0; itr < children.length; ++itr) {\n const child = children[itr];\n\n // Given Composition\n if (this.composition !== undefined) {\n // For compact compostion\n if (this.composition === 0) {\n this.addNodeShapetoSVG(\n child.data.name,\n child.data.subname,\n child.data.bodytext,\n child.data.metricName,\n // If the leaf node count is 1 ,\n //irrespective of provided composition we should always use long composition\n itr % 2 === 0 ? (children.length === 1 ? longNodeCenterX : compactNodeCenterX1) : compactNodeCenterX2,\n dy,\n child.data.fill,\n children.length === 1 ? rectWidth : compactNodeWidth,\n rectHeight,\n child.id,\n parentInfo,\n );\n if (itr % 2 === 1) {\n dy += compactNodeHeight + gap;\n }\n }\n // For long compostion\n else {\n this.addNodeShapetoSVG(\n child.data.name,\n child.data.subname,\n child.data.bodytext,\n child.data.metricName,\n longNodeCenterX,\n dy,\n child.data.fill,\n rectWidth,\n rectHeight,\n child.id,\n parentInfo,\n );\n dy += compactNodeHeight + gap;\n }\n }\n\n // Automatic Node Composition\n else {\n if (children.length > 2) {\n this.addNodeShapetoSVG(\n child.data.name,\n child.data.subname,\n child.data.bodytext,\n child.data.metricName,\n itr % 2 === 0 ? compactNodeCenterX1 : compactNodeCenterX2,\n dy,\n child.data.fill,\n children.length === 1 ? rectWidth : compactNodeWidth,\n rectHeight,\n child.id,\n parentInfo,\n );\n if (itr % 2 === 1) {\n dy += compactNodeHeight + gap;\n }\n } else {\n this.addNodeShapetoSVG(\n child.data.name,\n child.data.subname,\n child.data.bodytext,\n child.data.metricName,\n longNodeCenterX,\n dy,\n child.data.fill,\n rectWidth,\n rectHeight,\n child.id,\n parentInfo,\n );\n dy += compactNodeHeight + gap;\n }\n }\n }\n }\n\n if (d.children || treeHeight <= 2) {\n // <------------------ Nodes section ------------------>\n // Since the height <=2 we will be using long compositon.\n this.addNodeShapetoSVG(\n d.dataName,\n d.subName,\n d.bodyText,\n d.metricName,\n d.x,\n d.y,\n d.fill,\n rectWidth,\n rectHeight,\n d.id,\n parentInfo,\n );\n\n // <------------------ Links section ------------------>\n if (d.id === 0 && d.children) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const children: any = treeDataStructure[d.id]?.children;\n const childXMin = d3Min(children, (child: ITreeDataStructure) => child.x as number)!;\n const childXMax = d3Max(children, (child: ITreeDataStructure) => child.x as number)!;\n this.addLinktoSVG(d.id, d.x, d.y, childXMin, d.children[0].y, false, rectWidth, rectHeight, gap, childXMax);\n }\n }\n }\n }\n}\n\nexport class TreeChartBase extends React.Component<ITreeProps, ITreeState> {\n private _treeData: ITreeChartDataPoint;\n private _width: number;\n private _height: number;\n private _composition: number | undefined;\n private _classNames: IProcessedStyleSet<ITreeStyles>;\n private _margin: { left: number; right: number; top: number; bottom: number };\n private _nodeElements: JSX.Element[] = [];\n private _linkElements: JSX.Element[] = [];\n private _treeTraversal: number | undefined;\n\n constructor(props: ITreeProps) {\n super(props);\n this._margin = { top: 30, right: 20, bottom: 30, left: 50 };\n this._width = this.props.width || 1500;\n this._height = this.props.height || 700;\n this._treeData = this.props.treeData;\n this._composition = this.props?.composition;\n this._treeTraversal = this.props.treeTraversal;\n\n this.state = {\n _width: this._width,\n _height: this._height,\n };\n }\n\n public componentDidMount() {\n const { theme, className, styles } = this.props;\n\n // Get classNames to create component styling\n this._classNames = getClassNames(styles!, {\n theme: theme!,\n className,\n });\n\n // Call createTreeChart function in componentDidMount\n this.createTreeChart();\n\n this.setState({\n _width: this.props.width || 1500,\n _height: this.props.height || 700,\n });\n }\n\n public componentDidUpdate(prevProps: ITreeProps): void {\n if (prevProps.layoutWidth !== this.props.layoutWidth) {\n const svgText = selectAll('text');\n const svgRect = selectAll('rect');\n const svgLink = selectAll('path');\n\n if (this._nodeElements.length === 0 && this._linkElements.length === 0) {\n svgText.remove();\n svgRect.remove();\n svgLink.remove();\n }\n\n this.createTreeChart();\n }\n }\n public createTreeChart() {\n const nodeElements: JSX.Element[] = [];\n const linkElements: JSX.Element[] = [];\n\n // Instantiate inherited class and call createTree function for the object\n const treeObject = new LayeredTree(\n this._treeData,\n this._composition,\n this._classNames,\n nodeElements,\n linkElements,\n this._treeTraversal,\n );\n const width = this.state._width - this._margin.left - this._margin.right;\n treeObject.createTree(this.props.layoutWidth, width);\n this._nodeElements = nodeElements;\n this._linkElements = linkElements;\n }\n\n public render(): JSX.Element {\n return (\n <FocusZone>\n <div className={this._classNames?.root}>\n <svg\n className=\"svgTree\"\n width={this.state._width - this._margin.left - this._margin.right}\n height={this.state._height - this._margin.top - this._margin.bottom}\n >\n <g className=\"svgNode\">{this._nodeElements.map(element => element)}</g>\n <g className=\"svgLink\">{this._linkElements.map(element => element)}</g>\n </svg>\n </div>\n </FocusZone>\n );\n }\n}\n"]}
|
package/lib/version.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// Do not modify this file; it is generated as part of publish.
|
|
2
2
|
// The checked in version is a placeholder only and will not be updated.
|
|
3
3
|
import { setVersion } from '@fluentui/set-version';
|
|
4
|
-
setVersion('@fluentui/react-charting', '5.16.
|
|
4
|
+
setVersion('@fluentui/react-charting', '5.16.38');
|
|
5
5
|
//# sourceMappingURL=version.js.map
|
package/lib/version.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"version.js","sourceRoot":"../src/","sources":["version.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,wEAAwE;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,UAAU,CAAC,0BAA0B,EAAE,SAAS,CAAC,CAAC","sourcesContent":["// Do not modify this file; it is generated as part of publish.\n// The checked in version is a placeholder only and will not be updated.\nimport { setVersion } from '@fluentui/set-version';\nsetVersion('@fluentui/react-charting', '5.16.
|
|
1
|
+
{"version":3,"file":"version.js","sourceRoot":"../src/","sources":["version.ts"],"names":[],"mappings":"AAAA,+DAA+D;AAC/D,wEAAwE;AACxE,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,UAAU,CAAC,0BAA0B,EAAE,SAAS,CAAC,CAAC","sourcesContent":["// Do not modify this file; it is generated as part of publish.\n// The checked in version is a placeholder only and will not be updated.\nimport { setVersion } from '@fluentui/set-version';\nsetVersion('@fluentui/react-charting', '5.16.38');"]}
|
package/lib-amd/AreaChart.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
define(["require", "exports", "tslib", "./components/AreaChart/index"], function (require, exports, tslib_1, index_1) {
|
|
2
2
|
"use strict";
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
|
|
4
|
+
tslib_1.__exportStar(index_1, exports);
|
|
5
5
|
});
|
|
6
6
|
//# sourceMappingURL=AreaChart.js.map
|
package/lib-amd/AreaChart.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AreaChart.js","sourceRoot":"../src/","sources":["AreaChart.ts"],"names":[],"mappings":";;;IAAA,
|
|
1
|
+
{"version":3,"file":"AreaChart.js","sourceRoot":"../src/","sources":["AreaChart.ts"],"names":[],"mappings":";;;IAAA,uCAA6C","sourcesContent":["export * from './components/AreaChart/index';\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
define(["require", "exports", "tslib", "./components/CommonComponents/index"], function (require, exports, tslib_1, index_1) {
|
|
2
2
|
"use strict";
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
|
|
4
|
+
tslib_1.__exportStar(index_1, exports);
|
|
5
5
|
});
|
|
6
6
|
//# sourceMappingURL=CartesianChart.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CartesianChart.js","sourceRoot":"../src/","sources":["CartesianChart.ts"],"names":[],"mappings":";;;IAAA,
|
|
1
|
+
{"version":3,"file":"CartesianChart.js","sourceRoot":"../src/","sources":["CartesianChart.ts"],"names":[],"mappings":";;;IAAA,uCAAoD","sourcesContent":["export * from './components/CommonComponents/index';\n"]}
|
package/lib-amd/DonutChart.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
define(["require", "exports", "tslib", "./components/DonutChart/index"], function (require, exports, tslib_1, index_1) {
|
|
2
2
|
"use strict";
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
|
|
4
|
+
tslib_1.__exportStar(index_1, exports);
|
|
5
5
|
});
|
|
6
6
|
//# sourceMappingURL=DonutChart.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DonutChart.js","sourceRoot":"../src/","sources":["DonutChart.ts"],"names":[],"mappings":";;;IAAA,
|
|
1
|
+
{"version":3,"file":"DonutChart.js","sourceRoot":"../src/","sources":["DonutChart.ts"],"names":[],"mappings":";;;IAAA,uCAA8C","sourcesContent":["export * from './components/DonutChart/index';\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
define(["require", "exports", "tslib", "./components/GroupedVerticalBarChart/index"], function (require, exports, tslib_1, index_1) {
|
|
2
2
|
"use strict";
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
|
|
4
|
+
tslib_1.__exportStar(index_1, exports);
|
|
5
5
|
});
|
|
6
6
|
//# sourceMappingURL=GroupedVerticalBarChart.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"GroupedVerticalBarChart.js","sourceRoot":"../src/","sources":["GroupedVerticalBarChart.ts"],"names":[],"mappings":";;;IAAA,
|
|
1
|
+
{"version":3,"file":"GroupedVerticalBarChart.js","sourceRoot":"../src/","sources":["GroupedVerticalBarChart.ts"],"names":[],"mappings":";;;IAAA,uCAA2D","sourcesContent":["export * from './components/GroupedVerticalBarChart/index';\n"]}
|
package/lib-amd/HeatMapChart.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
define(["require", "exports", "tslib", "./components/HeatMapChart/index"], function (require, exports, tslib_1, index_1) {
|
|
2
2
|
"use strict";
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
|
|
4
|
+
tslib_1.__exportStar(index_1, exports);
|
|
5
5
|
});
|
|
6
6
|
//# sourceMappingURL=HeatMapChart.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HeatMapChart.js","sourceRoot":"../src/","sources":["HeatMapChart.ts"],"names":[],"mappings":";;;IAAA,
|
|
1
|
+
{"version":3,"file":"HeatMapChart.js","sourceRoot":"../src/","sources":["HeatMapChart.ts"],"names":[],"mappings":";;;IAAA,uCAAgD","sourcesContent":["export * from './components/HeatMapChart/index';\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
define(["require", "exports", "tslib", "./components/HorizontalBarChart/index"], function (require, exports, tslib_1, index_1) {
|
|
2
2
|
"use strict";
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
|
|
4
|
+
tslib_1.__exportStar(index_1, exports);
|
|
5
5
|
});
|
|
6
6
|
//# sourceMappingURL=HorizontalBarChart.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HorizontalBarChart.js","sourceRoot":"../src/","sources":["HorizontalBarChart.ts"],"names":[],"mappings":";;;IAAA,
|
|
1
|
+
{"version":3,"file":"HorizontalBarChart.js","sourceRoot":"../src/","sources":["HorizontalBarChart.ts"],"names":[],"mappings":";;;IAAA,uCAAsD","sourcesContent":["export * from './components/HorizontalBarChart/index';\n"]}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
define(["require", "exports", "tslib", "./components/HorizontalBarChartWithAxis/index"], function (require, exports, tslib_1, index_1) {
|
|
2
2
|
"use strict";
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
|
|
4
|
+
tslib_1.__exportStar(index_1, exports);
|
|
5
5
|
});
|
|
6
6
|
//# sourceMappingURL=HorizontalBarChartWithAxis.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"HorizontalBarChartWithAxis.js","sourceRoot":"../src/","sources":["HorizontalBarChartWithAxis.ts"],"names":[],"mappings":";;;IAAA,
|
|
1
|
+
{"version":3,"file":"HorizontalBarChartWithAxis.js","sourceRoot":"../src/","sources":["HorizontalBarChartWithAxis.ts"],"names":[],"mappings":";;;IAAA,uCAA8D","sourcesContent":["export * from './components/HorizontalBarChartWithAxis/index';\n"]}
|
package/lib-amd/Legends.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
define(["require", "exports", "tslib", "./components/Legends/index"], function (require, exports, tslib_1, index_1) {
|
|
2
2
|
"use strict";
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
|
|
4
|
+
tslib_1.__exportStar(index_1, exports);
|
|
5
5
|
});
|
|
6
6
|
//# sourceMappingURL=Legends.js.map
|
package/lib-amd/Legends.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Legends.js","sourceRoot":"../src/","sources":["Legends.ts"],"names":[],"mappings":";;;IAAA,
|
|
1
|
+
{"version":3,"file":"Legends.js","sourceRoot":"../src/","sources":["Legends.ts"],"names":[],"mappings":";;;IAAA,uCAA2C","sourcesContent":["export * from './components/Legends/index';\n"]}
|
package/lib-amd/LineChart.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
define(["require", "exports", "tslib", "./components/LineChart/index"], function (require, exports, tslib_1, index_1) {
|
|
2
2
|
"use strict";
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
|
|
4
|
+
tslib_1.__exportStar(index_1, exports);
|
|
5
5
|
});
|
|
6
6
|
//# sourceMappingURL=LineChart.js.map
|
package/lib-amd/LineChart.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LineChart.js","sourceRoot":"../src/","sources":["LineChart.ts"],"names":[],"mappings":";;;IAAA,
|
|
1
|
+
{"version":3,"file":"LineChart.js","sourceRoot":"../src/","sources":["LineChart.ts"],"names":[],"mappings":";;;IAAA,uCAA6C","sourcesContent":["export * from './components/LineChart/index';\n"]}
|
package/lib-amd/PieChart.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
define(["require", "exports", "tslib", "./components/PieChart/index"], function (require, exports, tslib_1, index_1) {
|
|
2
2
|
"use strict";
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
|
|
4
|
+
tslib_1.__exportStar(index_1, exports);
|
|
5
5
|
});
|
|
6
6
|
//# sourceMappingURL=PieChart.js.map
|
package/lib-amd/PieChart.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PieChart.js","sourceRoot":"../src/","sources":["PieChart.ts"],"names":[],"mappings":";;;IAAA,
|
|
1
|
+
{"version":3,"file":"PieChart.js","sourceRoot":"../src/","sources":["PieChart.ts"],"names":[],"mappings":";;;IAAA,uCAA4C","sourcesContent":["export * from './components/PieChart/index';\n"]}
|
package/lib-amd/SankeyChart.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
define(["require", "exports", "tslib", "./components/SankeyChart/index"], function (require, exports, tslib_1, index_1) {
|
|
2
2
|
"use strict";
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
|
|
4
|
+
tslib_1.__exportStar(index_1, exports);
|
|
5
5
|
});
|
|
6
6
|
//# sourceMappingURL=SankeyChart.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SankeyChart.js","sourceRoot":"../src/","sources":["SankeyChart.ts"],"names":[],"mappings":";;;IAAA,
|
|
1
|
+
{"version":3,"file":"SankeyChart.js","sourceRoot":"../src/","sources":["SankeyChart.ts"],"names":[],"mappings":";;;IAAA,uCAA+C","sourcesContent":["export * from './components/SankeyChart/index';\n"]}
|
package/lib-amd/Sparkline.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
define(["require", "exports", "tslib", "./components/Sparkline/index"], function (require, exports, tslib_1, index_1) {
|
|
2
2
|
"use strict";
|
|
3
3
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
-
|
|
4
|
+
tslib_1.__exportStar(index_1, exports);
|
|
5
5
|
});
|
|
6
6
|
//# sourceMappingURL=Sparkline.js.map
|