@fluentui/react-charting 5.16.23 → 5.16.25
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 +75 -1
- package/CHANGELOG.md +26 -2
- package/config/setup-env.js +1 -0
- package/docs/TestPlans/BasicDonutChart.png +0 -0
- package/docs/TestPlans/DonutChart/ComponentTests.md +35 -0
- package/lib/AreaChart.d.ts +1 -0
- package/lib/AreaChart.js +2 -0
- package/lib/AreaChart.js.map +1 -0
- package/lib/CartesianChart.d.ts +1 -0
- package/lib/CartesianChart.js +2 -0
- package/lib/CartesianChart.js.map +1 -0
- package/lib/DonutChart.d.ts +1 -0
- package/lib/DonutChart.js +2 -0
- package/lib/DonutChart.js.map +1 -0
- package/lib/GroupedVerticalBarChart.d.ts +1 -0
- package/lib/GroupedVerticalBarChart.js +2 -0
- package/lib/GroupedVerticalBarChart.js.map +1 -0
- package/lib/HeatMapChart.d.ts +1 -0
- package/lib/HeatMapChart.js +2 -0
- package/lib/HeatMapChart.js.map +1 -0
- package/lib/HorizontalBarChart.d.ts +1 -0
- package/lib/HorizontalBarChart.js +2 -0
- package/lib/HorizontalBarChart.js.map +1 -0
- package/lib/Legends.d.ts +1 -0
- package/lib/Legends.js +2 -0
- package/lib/Legends.js.map +1 -0
- package/lib/LineChart.d.ts +1 -0
- package/lib/LineChart.js +2 -0
- package/lib/LineChart.js.map +1 -0
- package/lib/PieChart.d.ts +1 -0
- package/lib/PieChart.js +2 -0
- package/lib/PieChart.js.map +1 -0
- package/lib/SankeyChart.d.ts +1 -0
- package/lib/SankeyChart.js +2 -0
- package/lib/SankeyChart.js.map +1 -0
- package/lib/Sparkline.d.ts +1 -0
- package/lib/Sparkline.js +2 -0
- package/lib/Sparkline.js.map +1 -0
- package/lib/StackedBarChart.d.ts +1 -0
- package/lib/StackedBarChart.js +2 -0
- package/lib/StackedBarChart.js.map +1 -0
- package/lib/Styling.d.ts +2 -0
- package/lib/Styling.js +8 -0
- package/lib/Styling.js.map +1 -0
- package/lib/TreeChart.d.ts +1 -0
- package/lib/TreeChart.js +2 -0
- package/lib/TreeChart.js.map +1 -0
- package/lib/Utilities.d.ts +2 -0
- package/lib/Utilities.js +20 -0
- package/lib/Utilities.js.map +1 -0
- package/lib/VerticalBarChart.d.ts +1 -0
- package/lib/VerticalBarChart.js +2 -0
- package/lib/VerticalBarChart.js.map +1 -0
- package/lib/VerticalStackedBarChart.d.ts +1 -0
- package/lib/VerticalStackedBarChart.js +2 -0
- package/lib/VerticalStackedBarChart.js.map +1 -0
- package/lib/components/AreaChart/AreaChart.base.d.ts +92 -0
- package/lib/components/AreaChart/AreaChart.base.js +562 -0
- package/lib/components/AreaChart/AreaChart.base.js.map +1 -0
- package/lib/components/AreaChart/AreaChart.d.ts +3 -0
- package/lib/components/AreaChart/AreaChart.js +6 -0
- package/lib/components/AreaChart/AreaChart.js.map +1 -0
- package/lib/components/AreaChart/AreaChart.styles.d.ts +2 -0
- package/lib/components/AreaChart/AreaChart.styles.js +7 -0
- package/lib/components/AreaChart/AreaChart.styles.js.map +1 -0
- package/lib/components/AreaChart/AreaChart.types.d.ts +37 -0
- package/lib/components/AreaChart/AreaChart.types.js +2 -0
- package/lib/components/AreaChart/AreaChart.types.js.map +1 -0
- package/lib/components/AreaChart/index.d.ts +2 -0
- package/lib/components/AreaChart/index.js +3 -0
- package/lib/components/AreaChart/index.js.map +1 -0
- package/lib/components/CommonComponents/CartesianChart.base.d.ts +43 -0
- package/lib/components/CommonComponents/CartesianChart.base.js +331 -0
- package/lib/components/CommonComponents/CartesianChart.base.js.map +1 -0
- package/lib/components/CommonComponents/CartesianChart.d.ts +3 -0
- package/lib/components/CommonComponents/CartesianChart.js +5 -0
- package/lib/components/CommonComponents/CartesianChart.js.map +1 -0
- package/lib/components/CommonComponents/CartesianChart.styles.d.ts +2 -0
- package/lib/components/CommonComponents/CartesianChart.styles.js +163 -0
- package/lib/components/CommonComponents/CartesianChart.styles.js.map +1 -0
- package/lib/components/CommonComponents/CartesianChart.types.d.ts +428 -0
- package/lib/components/CommonComponents/CartesianChart.types.js +2 -0
- package/lib/components/CommonComponents/CartesianChart.types.js.map +1 -0
- package/lib/components/CommonComponents/index.d.ts +2 -0
- package/lib/components/CommonComponents/index.js +3 -0
- package/lib/components/CommonComponents/index.js.map +1 -0
- package/lib/components/DonutChart/Arc/Arc.d.ts +21 -0
- package/lib/components/DonutChart/Arc/Arc.js +86 -0
- package/lib/components/DonutChart/Arc/Arc.js.map +1 -0
- package/lib/components/DonutChart/Arc/Arc.styles.d.ts +2 -0
- package/lib/components/DonutChart/Arc/Arc.styles.js +28 -0
- package/lib/components/DonutChart/Arc/Arc.styles.js.map +1 -0
- package/lib/components/DonutChart/Arc/Arc.types.d.ts +124 -0
- package/lib/components/DonutChart/Arc/Arc.types.js +2 -0
- package/lib/components/DonutChart/Arc/Arc.types.js.map +1 -0
- package/lib/components/DonutChart/Arc/index.d.ts +2 -0
- package/lib/components/DonutChart/Arc/index.js +3 -0
- package/lib/components/DonutChart/Arc/index.js.map +1 -0
- package/lib/components/DonutChart/DonutChart.base.d.ts +50 -0
- package/lib/components/DonutChart/DonutChart.base.js +211 -0
- package/lib/components/DonutChart/DonutChart.base.js.map +1 -0
- package/lib/components/DonutChart/DonutChart.d.ts +3 -0
- package/lib/components/DonutChart/DonutChart.js +6 -0
- package/lib/components/DonutChart/DonutChart.js.map +1 -0
- package/lib/components/DonutChart/DonutChart.styles.d.ts +2 -0
- package/lib/components/DonutChart/DonutChart.styles.js +30 -0
- package/lib/components/DonutChart/DonutChart.styles.js.map +1 -0
- package/lib/components/DonutChart/DonutChart.types.d.ts +63 -0
- package/lib/components/DonutChart/DonutChart.types.js +2 -0
- package/lib/components/DonutChart/DonutChart.types.js.map +1 -0
- package/lib/components/DonutChart/Pie/Pie.d.ts +15 -0
- package/lib/components/DonutChart/Pie/Pie.js +71 -0
- package/lib/components/DonutChart/Pie/Pie.js.map +1 -0
- package/lib/components/DonutChart/Pie/Pie.styles.d.ts +2 -0
- package/lib/components/DonutChart/Pie/Pie.styles.js +19 -0
- package/lib/components/DonutChart/Pie/Pie.styles.js.map +1 -0
- package/lib/components/DonutChart/Pie/Pie.types.d.ts +96 -0
- package/lib/components/DonutChart/Pie/Pie.types.js +2 -0
- package/lib/components/DonutChart/Pie/Pie.types.js.map +1 -0
- package/lib/components/DonutChart/Pie/index.d.ts +2 -0
- package/lib/components/DonutChart/Pie/index.js +3 -0
- package/lib/components/DonutChart/Pie/index.js.map +1 -0
- package/lib/components/DonutChart/index.d.ts +3 -0
- package/lib/components/DonutChart/index.js +4 -0
- package/lib/components/DonutChart/index.js.map +1 -0
- package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.d.ts +62 -0
- package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js +381 -0
- package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js.map +1 -0
- package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.d.ts +3 -0
- package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.js +6 -0
- package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.js.map +1 -0
- package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.styles.d.ts +2 -0
- package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.styles.js +17 -0
- package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.styles.js.map +1 -0
- package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.d.ts +83 -0
- package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.js +2 -0
- package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.js.map +1 -0
- package/lib/components/GroupedVerticalBarChart/index.d.ts +2 -0
- package/lib/components/GroupedVerticalBarChart/index.js +3 -0
- package/lib/components/GroupedVerticalBarChart/index.js.map +1 -0
- package/lib/components/HeatMapChart/HeatMapChart.base.d.ts +147 -0
- package/lib/components/HeatMapChart/HeatMapChart.base.js +498 -0
- package/lib/components/HeatMapChart/HeatMapChart.base.js.map +1 -0
- package/lib/components/HeatMapChart/HeatMapChart.d.ts +3 -0
- package/lib/components/HeatMapChart/HeatMapChart.js +5 -0
- package/lib/components/HeatMapChart/HeatMapChart.js.map +1 -0
- package/lib/components/HeatMapChart/HeatMapChart.styles.d.ts +2 -0
- package/lib/components/HeatMapChart/HeatMapChart.styles.js +24 -0
- package/lib/components/HeatMapChart/HeatMapChart.styles.js.map +1 -0
- package/lib/components/HeatMapChart/HeatMapChart.types.d.ts +110 -0
- package/lib/components/HeatMapChart/HeatMapChart.types.js +2 -0
- package/lib/components/HeatMapChart/HeatMapChart.types.js.map +1 -0
- package/lib/components/HeatMapChart/index.d.ts +2 -0
- package/lib/components/HeatMapChart/index.js +3 -0
- package/lib/components/HeatMapChart/index.js.map +1 -0
- package/lib/components/HorizontalBarChart/HorizontalBarChart.base.d.ts +36 -0
- package/lib/components/HorizontalBarChart/HorizontalBarChart.base.js +237 -0
- package/lib/components/HorizontalBarChart/HorizontalBarChart.base.js.map +1 -0
- package/lib/components/HorizontalBarChart/HorizontalBarChart.d.ts +3 -0
- package/lib/components/HorizontalBarChart/HorizontalBarChart.js +6 -0
- package/lib/components/HorizontalBarChart/HorizontalBarChart.js.map +1 -0
- package/lib/components/HorizontalBarChart/HorizontalBarChart.styles.d.ts +2 -0
- package/lib/components/HorizontalBarChart/HorizontalBarChart.styles.js +69 -0
- package/lib/components/HorizontalBarChart/HorizontalBarChart.styles.js.map +1 -0
- package/lib/components/HorizontalBarChart/HorizontalBarChart.types.d.ts +172 -0
- package/lib/components/HorizontalBarChart/HorizontalBarChart.types.js +6 -0
- package/lib/components/HorizontalBarChart/HorizontalBarChart.types.js.map +1 -0
- package/lib/components/HorizontalBarChart/index.d.ts +3 -0
- package/lib/components/HorizontalBarChart/index.js +4 -0
- package/lib/components/HorizontalBarChart/index.js.map +1 -0
- package/lib/components/Legends/Legends.base.d.ts +44 -0
- package/lib/components/Legends/Legends.base.js +293 -0
- package/lib/components/Legends/Legends.base.js.map +1 -0
- package/lib/components/Legends/Legends.d.ts +3 -0
- package/lib/components/Legends/Legends.js +5 -0
- package/lib/components/Legends/Legends.js.map +1 -0
- package/lib/components/Legends/Legends.styles.d.ts +2 -0
- package/lib/components/Legends/Legends.styles.js +103 -0
- package/lib/components/Legends/Legends.styles.js.map +1 -0
- package/lib/components/Legends/Legends.types.d.ts +169 -0
- package/lib/components/Legends/Legends.types.js +2 -0
- package/lib/components/Legends/Legends.types.js.map +1 -0
- package/lib/components/Legends/index.d.ts +3 -0
- package/lib/components/Legends/index.js +4 -0
- package/lib/components/Legends/index.js.map +1 -0
- package/lib/components/Legends/shape.d.ts +9 -0
- package/lib/components/Legends/shape.js +24 -0
- package/lib/components/Legends/shape.js.map +1 -0
- package/lib/components/LineChart/LineChart.base.d.ts +84 -0
- package/lib/components/LineChart/LineChart.base.js +815 -0
- package/lib/components/LineChart/LineChart.base.js.map +1 -0
- package/lib/components/LineChart/LineChart.d.ts +3 -0
- package/lib/components/LineChart/LineChart.js +6 -0
- package/lib/components/LineChart/LineChart.js.map +1 -0
- package/lib/components/LineChart/LineChart.styles.d.ts +2 -0
- package/lib/components/LineChart/LineChart.styles.js +7 -0
- package/lib/components/LineChart/LineChart.styles.js.map +1 -0
- package/lib/components/LineChart/LineChart.types.d.ts +72 -0
- package/lib/components/LineChart/LineChart.types.js +2 -0
- package/lib/components/LineChart/LineChart.types.js.map +1 -0
- package/lib/components/LineChart/eventAnnotation/EventAnnotation.d.ts +10 -0
- package/lib/components/LineChart/eventAnnotation/EventAnnotation.js +93 -0
- package/lib/components/LineChart/eventAnnotation/EventAnnotation.js.map +1 -0
- package/lib/components/LineChart/eventAnnotation/LabelLink.d.ts +22 -0
- package/lib/components/LineChart/eventAnnotation/LabelLink.js +37 -0
- package/lib/components/LineChart/eventAnnotation/LabelLink.js.map +1 -0
- package/lib/components/LineChart/eventAnnotation/Textbox.d.ts +13 -0
- package/lib/components/LineChart/eventAnnotation/Textbox.js +37 -0
- package/lib/components/LineChart/eventAnnotation/Textbox.js.map +1 -0
- package/lib/components/LineChart/index.d.ts +3 -0
- package/lib/components/LineChart/index.js +4 -0
- package/lib/components/LineChart/index.js.map +1 -0
- package/lib/components/PieChart/Arc/Arc.d.ts +12 -0
- package/lib/components/PieChart/Arc/Arc.js +57 -0
- package/lib/components/PieChart/Arc/Arc.js.map +1 -0
- package/lib/components/PieChart/Arc/Arc.styles.d.ts +2 -0
- package/lib/components/PieChart/Arc/Arc.styles.js +8 -0
- package/lib/components/PieChart/Arc/Arc.styles.js.map +1 -0
- package/lib/components/PieChart/Arc/Arc.types.d.ts +60 -0
- package/lib/components/PieChart/Arc/Arc.types.js +2 -0
- package/lib/components/PieChart/Arc/Arc.types.js.map +1 -0
- package/lib/components/PieChart/Arc/index.d.ts +2 -0
- package/lib/components/PieChart/Arc/index.js +3 -0
- package/lib/components/PieChart/Arc/index.js.map +1 -0
- package/lib/components/PieChart/Pie/Pie.d.ts +10 -0
- package/lib/components/PieChart/Pie/Pie.js +35 -0
- package/lib/components/PieChart/Pie/Pie.js.map +1 -0
- package/lib/components/PieChart/Pie/Pie.styles.d.ts +2 -0
- package/lib/components/PieChart/Pie/Pie.styles.js +6 -0
- package/lib/components/PieChart/Pie/Pie.styles.js.map +1 -0
- package/lib/components/PieChart/Pie/Pie.types.d.ts +46 -0
- package/lib/components/PieChart/Pie/Pie.types.js +2 -0
- package/lib/components/PieChart/Pie/Pie.types.js.map +1 -0
- package/lib/components/PieChart/Pie/index.d.ts +2 -0
- package/lib/components/PieChart/Pie/index.js +3 -0
- package/lib/components/PieChart/Pie/index.js.map +1 -0
- package/lib/components/PieChart/PieChart.base.d.ts +7 -0
- package/lib/components/PieChart/PieChart.base.js +34 -0
- package/lib/components/PieChart/PieChart.base.js.map +1 -0
- package/lib/components/PieChart/PieChart.d.ts +3 -0
- package/lib/components/PieChart/PieChart.js +6 -0
- package/lib/components/PieChart/PieChart.js.map +1 -0
- package/lib/components/PieChart/PieChart.styles.d.ts +2 -0
- package/lib/components/PieChart/PieChart.styles.js +29 -0
- package/lib/components/PieChart/PieChart.styles.js.map +1 -0
- package/lib/components/PieChart/PieChart.types.d.ts +63 -0
- package/lib/components/PieChart/PieChart.types.js +2 -0
- package/lib/components/PieChart/PieChart.types.js.map +1 -0
- package/lib/components/PieChart/index.d.ts +2 -0
- package/lib/components/PieChart/index.js +3 -0
- package/lib/components/PieChart/index.js.map +1 -0
- package/lib/components/SankeyChart/SankeyChart.base.d.ts +95 -0
- package/lib/components/SankeyChart/SankeyChart.base.js +674 -0
- package/lib/components/SankeyChart/SankeyChart.base.js.map +1 -0
- package/lib/components/SankeyChart/SankeyChart.d.ts +3 -0
- package/lib/components/SankeyChart/SankeyChart.js +6 -0
- package/lib/components/SankeyChart/SankeyChart.js.map +1 -0
- package/lib/components/SankeyChart/SankeyChart.styles.d.ts +2 -0
- package/lib/components/SankeyChart/SankeyChart.styles.js +58 -0
- package/lib/components/SankeyChart/SankeyChart.styles.js.map +1 -0
- package/lib/components/SankeyChart/SankeyChart.types.d.ts +83 -0
- package/lib/components/SankeyChart/SankeyChart.types.js +2 -0
- package/lib/components/SankeyChart/SankeyChart.types.js.map +1 -0
- package/lib/components/SankeyChart/index.d.ts +2 -0
- package/lib/components/SankeyChart/index.js +3 -0
- package/lib/components/SankeyChart/index.js.map +1 -0
- package/lib/components/Sparkline/Sparkline.base.d.ts +20 -0
- package/lib/components/Sparkline/Sparkline.base.js +76 -0
- package/lib/components/Sparkline/Sparkline.base.js.map +1 -0
- package/lib/components/Sparkline/Sparkline.d.ts +3 -0
- package/lib/components/Sparkline/Sparkline.js +6 -0
- package/lib/components/Sparkline/Sparkline.js.map +1 -0
- package/lib/components/Sparkline/Sparkline.styles.d.ts +2 -0
- package/lib/components/Sparkline/Sparkline.styles.js +10 -0
- package/lib/components/Sparkline/Sparkline.styles.js.map +1 -0
- package/lib/components/Sparkline/Sparkline.types.d.ts +51 -0
- package/lib/components/Sparkline/Sparkline.types.js +2 -0
- package/lib/components/Sparkline/Sparkline.types.js.map +1 -0
- package/lib/components/Sparkline/index.d.ts +2 -0
- package/lib/components/Sparkline/index.js +3 -0
- package/lib/components/Sparkline/index.js.map +1 -0
- package/lib/components/StackedBarChart/MultiStackedBarChart.base.d.ts +56 -0
- package/lib/components/StackedBarChart/MultiStackedBarChart.base.js +356 -0
- package/lib/components/StackedBarChart/MultiStackedBarChart.base.js.map +1 -0
- package/lib/components/StackedBarChart/MultiStackedBarChart.d.ts +3 -0
- package/lib/components/StackedBarChart/MultiStackedBarChart.js +6 -0
- package/lib/components/StackedBarChart/MultiStackedBarChart.js.map +1 -0
- package/lib/components/StackedBarChart/MultiStackedBarChart.styles.d.ts +2 -0
- package/lib/components/StackedBarChart/MultiStackedBarChart.styles.js +90 -0
- package/lib/components/StackedBarChart/MultiStackedBarChart.styles.js.map +1 -0
- package/lib/components/StackedBarChart/MultiStackedBarChart.types.d.ts +198 -0
- package/lib/components/StackedBarChart/MultiStackedBarChart.types.js +6 -0
- package/lib/components/StackedBarChart/MultiStackedBarChart.types.js.map +1 -0
- package/lib/components/StackedBarChart/StackedBarChart.base.d.ts +51 -0
- package/lib/components/StackedBarChart/StackedBarChart.base.js +311 -0
- package/lib/components/StackedBarChart/StackedBarChart.base.js.map +1 -0
- package/lib/components/StackedBarChart/StackedBarChart.d.ts +3 -0
- package/lib/components/StackedBarChart/StackedBarChart.js +6 -0
- package/lib/components/StackedBarChart/StackedBarChart.js.map +1 -0
- package/lib/components/StackedBarChart/StackedBarChart.styles.d.ts +2 -0
- package/lib/components/StackedBarChart/StackedBarChart.styles.js +104 -0
- package/lib/components/StackedBarChart/StackedBarChart.styles.js.map +1 -0
- package/lib/components/StackedBarChart/StackedBarChart.types.d.ts +210 -0
- package/lib/components/StackedBarChart/StackedBarChart.types.js +2 -0
- package/lib/components/StackedBarChart/StackedBarChart.types.js.map +1 -0
- package/lib/components/StackedBarChart/index.d.ts +5 -0
- package/lib/components/StackedBarChart/index.js +6 -0
- package/lib/components/StackedBarChart/index.js.map +1 -0
- package/lib/components/TreeChart/TreeChart.base.d.ts +18 -0
- package/lib/components/TreeChart/TreeChart.base.js +316 -0
- package/lib/components/TreeChart/TreeChart.base.js.map +1 -0
- package/lib/components/TreeChart/TreeChart.d.ts +3 -0
- package/lib/components/TreeChart/TreeChart.js +5 -0
- package/lib/components/TreeChart/TreeChart.js.map +1 -0
- package/lib/components/TreeChart/TreeChart.styles.d.ts +2 -0
- package/lib/components/TreeChart/TreeChart.styles.js +29 -0
- package/lib/components/TreeChart/TreeChart.styles.js.map +1 -0
- package/lib/components/TreeChart/TreeChart.types.d.ts +197 -0
- package/lib/components/TreeChart/TreeChart.types.js +23 -0
- package/lib/components/TreeChart/TreeChart.types.js.map +1 -0
- package/lib/components/TreeChart/index.d.ts +2 -0
- package/lib/components/TreeChart/index.js +3 -0
- package/lib/components/TreeChart/index.js.map +1 -0
- package/lib/components/VerticalBarChart/VerticalBarChart.base.d.ts +74 -0
- package/lib/components/VerticalBarChart/VerticalBarChart.base.js +536 -0
- package/lib/components/VerticalBarChart/VerticalBarChart.base.js.map +1 -0
- package/lib/components/VerticalBarChart/VerticalBarChart.d.ts +3 -0
- package/lib/components/VerticalBarChart/VerticalBarChart.js +6 -0
- package/lib/components/VerticalBarChart/VerticalBarChart.js.map +1 -0
- package/lib/components/VerticalBarChart/VerticalBarChart.styles.d.ts +2 -0
- package/lib/components/VerticalBarChart/VerticalBarChart.styles.js +28 -0
- package/lib/components/VerticalBarChart/VerticalBarChart.styles.js.map +1 -0
- package/lib/components/VerticalBarChart/VerticalBarChart.types.d.ts +114 -0
- package/lib/components/VerticalBarChart/VerticalBarChart.types.js +2 -0
- package/lib/components/VerticalBarChart/VerticalBarChart.types.js.map +1 -0
- package/lib/components/VerticalBarChart/index.d.ts +2 -0
- package/lib/components/VerticalBarChart/index.js +3 -0
- package/lib/components/VerticalBarChart/index.js.map +1 -0
- package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.base.d.ts +85 -0
- package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.base.js +666 -0
- package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.base.js.map +1 -0
- package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.d.ts +3 -0
- package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.js +6 -0
- package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.js.map +1 -0
- package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.styles.d.ts +2 -0
- package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.styles.js +18 -0
- package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.styles.js.map +1 -0
- package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.types.d.ts +142 -0
- package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.types.js +2 -0
- package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.types.js.map +1 -0
- package/lib/components/VerticalStackedBarChart/index.d.ts +2 -0
- package/lib/components/VerticalStackedBarChart/index.js +3 -0
- package/lib/components/VerticalStackedBarChart/index.js.map +1 -0
- package/lib/index.d.ts +19 -0
- package/lib/index.js +20 -0
- package/lib/index.js.map +1 -0
- package/lib/types/IDataPoint.d.ts +545 -0
- package/lib/types/IDataPoint.js +2 -0
- package/lib/types/IDataPoint.js.map +1 -0
- package/lib/types/IEventAnnotation.d.ts +6 -0
- package/lib/types/IEventAnnotation.js +2 -0
- package/lib/types/IEventAnnotation.js.map +1 -0
- package/lib/types/ILegendDataItem.d.ts +10 -0
- package/lib/types/ILegendDataItem.js +2 -0
- package/lib/types/ILegendDataItem.js.map +1 -0
- package/lib/types/index.d.ts +2 -0
- package/lib/types/index.js +3 -0
- package/lib/types/index.js.map +1 -0
- package/lib/utilities/ChartHoverCard/ChartHoverCard.base.d.ts +6 -0
- package/lib/utilities/ChartHoverCard/ChartHoverCard.base.js +38 -0
- package/lib/utilities/ChartHoverCard/ChartHoverCard.base.js.map +1 -0
- package/lib/utilities/ChartHoverCard/ChartHoverCard.d.ts +3 -0
- package/lib/utilities/ChartHoverCard/ChartHoverCard.js +6 -0
- package/lib/utilities/ChartHoverCard/ChartHoverCard.js.map +1 -0
- package/lib/utilities/ChartHoverCard/ChartHoverCard.styles.d.ts +2 -0
- package/lib/utilities/ChartHoverCard/ChartHoverCard.styles.js +82 -0
- package/lib/utilities/ChartHoverCard/ChartHoverCard.styles.js.map +1 -0
- package/lib/utilities/ChartHoverCard/ChartHoverCard.types.d.ts +105 -0
- package/lib/utilities/ChartHoverCard/ChartHoverCard.types.js +2 -0
- package/lib/utilities/ChartHoverCard/ChartHoverCard.types.js.map +1 -0
- package/lib/utilities/ChartHoverCard/index.d.ts +3 -0
- package/lib/utilities/ChartHoverCard/index.js +4 -0
- package/lib/utilities/ChartHoverCard/index.js.map +1 -0
- package/lib/utilities/FocusableTooltipText.d.ts +27 -0
- package/lib/utilities/FocusableTooltipText.js +54 -0
- package/lib/utilities/FocusableTooltipText.js.map +1 -0
- package/lib/utilities/colors.d.ts +51 -0
- package/lib/utilities/colors.js +132 -0
- package/lib/utilities/colors.js.map +1 -0
- package/lib/utilities/index.d.ts +3 -0
- package/lib/utilities/index.js +4 -0
- package/lib/utilities/index.js.map +1 -0
- package/lib/utilities/utilities.d.ts +377 -0
- package/lib/utilities/utilities.js +864 -0
- package/lib/utilities/utilities.js.map +1 -0
- package/lib/version.d.ts +1 -0
- package/lib/version.js +5 -0
- package/lib/version.js.map +1 -0
- package/lib-amd/AreaChart.d.ts +1 -0
- package/lib-amd/AreaChart.js +6 -0
- package/lib-amd/AreaChart.js.map +1 -0
- package/lib-amd/CartesianChart.d.ts +1 -0
- package/lib-amd/CartesianChart.js +6 -0
- package/lib-amd/CartesianChart.js.map +1 -0
- package/lib-amd/DonutChart.d.ts +1 -0
- package/lib-amd/DonutChart.js +6 -0
- package/lib-amd/DonutChart.js.map +1 -0
- package/lib-amd/GroupedVerticalBarChart.d.ts +1 -0
- package/lib-amd/GroupedVerticalBarChart.js +6 -0
- package/lib-amd/GroupedVerticalBarChart.js.map +1 -0
- package/lib-amd/HeatMapChart.d.ts +1 -0
- package/lib-amd/HeatMapChart.js +6 -0
- package/lib-amd/HeatMapChart.js.map +1 -0
- package/lib-amd/HorizontalBarChart.d.ts +1 -0
- package/lib-amd/HorizontalBarChart.js +6 -0
- package/lib-amd/HorizontalBarChart.js.map +1 -0
- package/lib-amd/Legends.d.ts +1 -0
- package/lib-amd/Legends.js +6 -0
- package/lib-amd/Legends.js.map +1 -0
- package/lib-amd/LineChart.d.ts +1 -0
- package/lib-amd/LineChart.js +6 -0
- package/lib-amd/LineChart.js.map +1 -0
- package/lib-amd/PieChart.d.ts +1 -0
- package/lib-amd/PieChart.js +6 -0
- package/lib-amd/PieChart.js.map +1 -0
- package/lib-amd/SankeyChart.d.ts +1 -0
- package/lib-amd/SankeyChart.js +6 -0
- package/lib-amd/SankeyChart.js.map +1 -0
- package/lib-amd/Sparkline.d.ts +1 -0
- package/lib-amd/Sparkline.js +6 -0
- package/lib-amd/Sparkline.js.map +1 -0
- package/lib-amd/StackedBarChart.d.ts +1 -0
- package/lib-amd/StackedBarChart.js +6 -0
- package/lib-amd/StackedBarChart.js.map +1 -0
- package/lib-amd/Styling.d.ts +2 -0
- package/lib-amd/Styling.js +75 -0
- package/lib-amd/Styling.js.map +1 -0
- package/lib-amd/TreeChart.d.ts +1 -0
- package/lib-amd/TreeChart.js +6 -0
- package/lib-amd/TreeChart.js.map +1 -0
- package/lib-amd/Utilities.d.ts +2 -0
- package/lib-amd/Utilities.js +183 -0
- package/lib-amd/Utilities.js.map +1 -0
- package/lib-amd/VerticalBarChart.d.ts +1 -0
- package/lib-amd/VerticalBarChart.js +6 -0
- package/lib-amd/VerticalBarChart.js.map +1 -0
- package/lib-amd/VerticalStackedBarChart.d.ts +1 -0
- package/lib-amd/VerticalStackedBarChart.js +6 -0
- package/lib-amd/VerticalStackedBarChart.js.map +1 -0
- package/lib-amd/components/AreaChart/AreaChart.base.d.ts +92 -0
- package/lib-amd/components/AreaChart/AreaChart.base.js +555 -0
- package/lib-amd/components/AreaChart/AreaChart.base.js.map +1 -0
- package/lib-amd/components/AreaChart/AreaChart.d.ts +3 -0
- package/lib-amd/components/AreaChart/AreaChart.js +8 -0
- package/lib-amd/components/AreaChart/AreaChart.js.map +1 -0
- package/lib-amd/components/AreaChart/AreaChart.styles.d.ts +2 -0
- package/lib-amd/components/AreaChart/AreaChart.styles.js +12 -0
- package/lib-amd/components/AreaChart/AreaChart.styles.js.map +1 -0
- package/lib-amd/components/AreaChart/AreaChart.types.d.ts +37 -0
- package/lib-amd/components/AreaChart/AreaChart.types.js +5 -0
- package/lib-amd/components/AreaChart/AreaChart.types.js.map +1 -0
- package/lib-amd/components/AreaChart/index.d.ts +2 -0
- package/lib-amd/components/AreaChart/index.js +7 -0
- package/lib-amd/components/AreaChart/index.js.map +1 -0
- package/lib-amd/components/CommonComponents/CartesianChart.base.d.ts +43 -0
- package/lib-amd/components/CommonComponents/CartesianChart.base.js +329 -0
- package/lib-amd/components/CommonComponents/CartesianChart.base.js.map +1 -0
- package/lib-amd/components/CommonComponents/CartesianChart.d.ts +3 -0
- package/lib-amd/components/CommonComponents/CartesianChart.js +7 -0
- package/lib-amd/components/CommonComponents/CartesianChart.js.map +1 -0
- package/lib-amd/components/CommonComponents/CartesianChart.styles.d.ts +2 -0
- package/lib-amd/components/CommonComponents/CartesianChart.styles.js +166 -0
- package/lib-amd/components/CommonComponents/CartesianChart.styles.js.map +1 -0
- package/lib-amd/components/CommonComponents/CartesianChart.types.d.ts +428 -0
- package/lib-amd/components/CommonComponents/CartesianChart.types.js +5 -0
- package/lib-amd/components/CommonComponents/CartesianChart.types.js.map +1 -0
- package/lib-amd/components/CommonComponents/index.d.ts +2 -0
- package/lib-amd/components/CommonComponents/index.js +7 -0
- package/lib-amd/components/CommonComponents/index.js.map +1 -0
- package/lib-amd/components/DonutChart/Arc/Arc.d.ts +21 -0
- package/lib-amd/components/DonutChart/Arc/Arc.js +85 -0
- package/lib-amd/components/DonutChart/Arc/Arc.js.map +1 -0
- package/lib-amd/components/DonutChart/Arc/Arc.styles.d.ts +2 -0
- package/lib-amd/components/DonutChart/Arc/Arc.styles.js +33 -0
- package/lib-amd/components/DonutChart/Arc/Arc.styles.js.map +1 -0
- package/lib-amd/components/DonutChart/Arc/Arc.types.d.ts +124 -0
- package/lib-amd/components/DonutChart/Arc/Arc.types.js +5 -0
- package/lib-amd/components/DonutChart/Arc/Arc.types.js.map +1 -0
- package/lib-amd/components/DonutChart/Arc/index.d.ts +2 -0
- package/lib-amd/components/DonutChart/Arc/index.js +7 -0
- package/lib-amd/components/DonutChart/Arc/index.js.map +1 -0
- package/lib-amd/components/DonutChart/DonutChart.base.d.ts +50 -0
- package/lib-amd/components/DonutChart/DonutChart.base.js +208 -0
- package/lib-amd/components/DonutChart/DonutChart.base.js.map +1 -0
- package/lib-amd/components/DonutChart/DonutChart.d.ts +3 -0
- package/lib-amd/components/DonutChart/DonutChart.js +8 -0
- package/lib-amd/components/DonutChart/DonutChart.js.map +1 -0
- package/lib-amd/components/DonutChart/DonutChart.styles.d.ts +2 -0
- package/lib-amd/components/DonutChart/DonutChart.styles.js +36 -0
- package/lib-amd/components/DonutChart/DonutChart.styles.js.map +1 -0
- package/lib-amd/components/DonutChart/DonutChart.types.d.ts +63 -0
- package/lib-amd/components/DonutChart/DonutChart.types.js +5 -0
- package/lib-amd/components/DonutChart/DonutChart.types.js.map +1 -0
- package/lib-amd/components/DonutChart/Pie/Pie.d.ts +15 -0
- package/lib-amd/components/DonutChart/Pie/Pie.js +69 -0
- package/lib-amd/components/DonutChart/Pie/Pie.js.map +1 -0
- package/lib-amd/components/DonutChart/Pie/Pie.styles.d.ts +2 -0
- package/lib-amd/components/DonutChart/Pie/Pie.styles.js +24 -0
- package/lib-amd/components/DonutChart/Pie/Pie.styles.js.map +1 -0
- package/lib-amd/components/DonutChart/Pie/Pie.types.d.ts +96 -0
- package/lib-amd/components/DonutChart/Pie/Pie.types.js +5 -0
- package/lib-amd/components/DonutChart/Pie/Pie.types.js.map +1 -0
- package/lib-amd/components/DonutChart/Pie/index.d.ts +2 -0
- package/lib-amd/components/DonutChart/Pie/index.js +7 -0
- package/lib-amd/components/DonutChart/Pie/index.js.map +1 -0
- package/lib-amd/components/DonutChart/index.d.ts +3 -0
- package/lib-amd/components/DonutChart/index.js +8 -0
- package/lib-amd/components/DonutChart/index.js.map +1 -0
- package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.d.ts +62 -0
- package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js +375 -0
- package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js.map +1 -0
- package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.d.ts +3 -0
- package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.js +8 -0
- package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.js.map +1 -0
- package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.styles.d.ts +2 -0
- package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.styles.js +21 -0
- package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.styles.js.map +1 -0
- package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.d.ts +83 -0
- package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.js +5 -0
- package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.js.map +1 -0
- package/lib-amd/components/GroupedVerticalBarChart/index.d.ts +2 -0
- package/lib-amd/components/GroupedVerticalBarChart/index.js +7 -0
- package/lib-amd/components/GroupedVerticalBarChart/index.js.map +1 -0
- package/lib-amd/components/HeatMapChart/HeatMapChart.base.d.ts +147 -0
- package/lib-amd/components/HeatMapChart/HeatMapChart.base.js +492 -0
- package/lib-amd/components/HeatMapChart/HeatMapChart.base.js.map +1 -0
- package/lib-amd/components/HeatMapChart/HeatMapChart.d.ts +3 -0
- package/lib-amd/components/HeatMapChart/HeatMapChart.js +7 -0
- package/lib-amd/components/HeatMapChart/HeatMapChart.js.map +1 -0
- package/lib-amd/components/HeatMapChart/HeatMapChart.styles.d.ts +2 -0
- package/lib-amd/components/HeatMapChart/HeatMapChart.styles.js +29 -0
- package/lib-amd/components/HeatMapChart/HeatMapChart.styles.js.map +1 -0
- package/lib-amd/components/HeatMapChart/HeatMapChart.types.d.ts +110 -0
- package/lib-amd/components/HeatMapChart/HeatMapChart.types.js +5 -0
- package/lib-amd/components/HeatMapChart/HeatMapChart.types.js.map +1 -0
- package/lib-amd/components/HeatMapChart/index.d.ts +2 -0
- package/lib-amd/components/HeatMapChart/index.js +7 -0
- package/lib-amd/components/HeatMapChart/index.js.map +1 -0
- package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.base.d.ts +36 -0
- package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.base.js +233 -0
- package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.base.js.map +1 -0
- package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.d.ts +3 -0
- package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.js +8 -0
- package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.js.map +1 -0
- package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.styles.d.ts +2 -0
- package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.styles.js +72 -0
- package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.styles.js.map +1 -0
- package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.types.d.ts +172 -0
- package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.types.js +11 -0
- package/lib-amd/components/HorizontalBarChart/HorizontalBarChart.types.js.map +1 -0
- package/lib-amd/components/HorizontalBarChart/index.d.ts +3 -0
- package/lib-amd/components/HorizontalBarChart/index.js +8 -0
- package/lib-amd/components/HorizontalBarChart/index.js.map +1 -0
- package/lib-amd/components/Legends/Legends.base.d.ts +44 -0
- package/lib-amd/components/Legends/Legends.base.js +290 -0
- package/lib-amd/components/Legends/Legends.base.js.map +1 -0
- package/lib-amd/components/Legends/Legends.d.ts +3 -0
- package/lib-amd/components/Legends/Legends.js +7 -0
- package/lib-amd/components/Legends/Legends.js.map +1 -0
- package/lib-amd/components/Legends/Legends.styles.d.ts +2 -0
- package/lib-amd/components/Legends/Legends.styles.js +107 -0
- package/lib-amd/components/Legends/Legends.styles.js.map +1 -0
- package/lib-amd/components/Legends/Legends.types.d.ts +169 -0
- package/lib-amd/components/Legends/Legends.types.js +5 -0
- package/lib-amd/components/Legends/Legends.types.js.map +1 -0
- package/lib-amd/components/Legends/index.d.ts +3 -0
- package/lib-amd/components/Legends/index.js +8 -0
- package/lib-amd/components/Legends/index.js.map +1 -0
- package/lib-amd/components/Legends/shape.d.ts +9 -0
- package/lib-amd/components/Legends/shape.js +27 -0
- package/lib-amd/components/Legends/shape.js.map +1 -0
- package/lib-amd/components/LineChart/LineChart.base.d.ts +84 -0
- package/lib-amd/components/LineChart/LineChart.base.js +809 -0
- package/lib-amd/components/LineChart/LineChart.base.js.map +1 -0
- package/lib-amd/components/LineChart/LineChart.d.ts +3 -0
- package/lib-amd/components/LineChart/LineChart.js +8 -0
- package/lib-amd/components/LineChart/LineChart.js.map +1 -0
- package/lib-amd/components/LineChart/LineChart.styles.d.ts +2 -0
- package/lib-amd/components/LineChart/LineChart.styles.js +12 -0
- package/lib-amd/components/LineChart/LineChart.styles.js.map +1 -0
- package/lib-amd/components/LineChart/LineChart.types.d.ts +72 -0
- package/lib-amd/components/LineChart/LineChart.types.js +5 -0
- package/lib-amd/components/LineChart/LineChart.types.js.map +1 -0
- package/lib-amd/components/LineChart/eventAnnotation/EventAnnotation.d.ts +10 -0
- package/lib-amd/components/LineChart/eventAnnotation/EventAnnotation.js +95 -0
- package/lib-amd/components/LineChart/eventAnnotation/EventAnnotation.js.map +1 -0
- package/lib-amd/components/LineChart/eventAnnotation/LabelLink.d.ts +22 -0
- package/lib-amd/components/LineChart/eventAnnotation/LabelLink.js +40 -0
- package/lib-amd/components/LineChart/eventAnnotation/LabelLink.js.map +1 -0
- package/lib-amd/components/LineChart/eventAnnotation/Textbox.d.ts +13 -0
- package/lib-amd/components/LineChart/eventAnnotation/Textbox.js +40 -0
- package/lib-amd/components/LineChart/eventAnnotation/Textbox.js.map +1 -0
- package/lib-amd/components/LineChart/index.d.ts +3 -0
- package/lib-amd/components/LineChart/index.js +8 -0
- package/lib-amd/components/LineChart/index.js.map +1 -0
- package/lib-amd/components/PieChart/Arc/Arc.d.ts +12 -0
- package/lib-amd/components/PieChart/Arc/Arc.js +56 -0
- package/lib-amd/components/PieChart/Arc/Arc.js.map +1 -0
- package/lib-amd/components/PieChart/Arc/Arc.styles.d.ts +2 -0
- package/lib-amd/components/PieChart/Arc/Arc.styles.js +13 -0
- package/lib-amd/components/PieChart/Arc/Arc.styles.js.map +1 -0
- package/lib-amd/components/PieChart/Arc/Arc.types.d.ts +60 -0
- package/lib-amd/components/PieChart/Arc/Arc.types.js +5 -0
- package/lib-amd/components/PieChart/Arc/Arc.types.js.map +1 -0
- package/lib-amd/components/PieChart/Arc/index.d.ts +2 -0
- package/lib-amd/components/PieChart/Arc/index.js +7 -0
- package/lib-amd/components/PieChart/Arc/index.js.map +1 -0
- package/lib-amd/components/PieChart/Pie/Pie.d.ts +10 -0
- package/lib-amd/components/PieChart/Pie/Pie.js +35 -0
- package/lib-amd/components/PieChart/Pie/Pie.js.map +1 -0
- package/lib-amd/components/PieChart/Pie/Pie.styles.d.ts +2 -0
- package/lib-amd/components/PieChart/Pie/Pie.styles.js +12 -0
- package/lib-amd/components/PieChart/Pie/Pie.styles.js.map +1 -0
- package/lib-amd/components/PieChart/Pie/Pie.types.d.ts +46 -0
- package/lib-amd/components/PieChart/Pie/Pie.types.js +5 -0
- package/lib-amd/components/PieChart/Pie/Pie.types.js.map +1 -0
- package/lib-amd/components/PieChart/Pie/index.d.ts +2 -0
- package/lib-amd/components/PieChart/Pie/index.js +7 -0
- package/lib-amd/components/PieChart/Pie/index.js.map +1 -0
- package/lib-amd/components/PieChart/PieChart.base.d.ts +7 -0
- package/lib-amd/components/PieChart/PieChart.base.js +35 -0
- package/lib-amd/components/PieChart/PieChart.base.js.map +1 -0
- package/lib-amd/components/PieChart/PieChart.d.ts +3 -0
- package/lib-amd/components/PieChart/PieChart.js +8 -0
- package/lib-amd/components/PieChart/PieChart.js.map +1 -0
- package/lib-amd/components/PieChart/PieChart.styles.d.ts +2 -0
- package/lib-amd/components/PieChart/PieChart.styles.js +34 -0
- package/lib-amd/components/PieChart/PieChart.styles.js.map +1 -0
- package/lib-amd/components/PieChart/PieChart.types.d.ts +63 -0
- package/lib-amd/components/PieChart/PieChart.types.js +5 -0
- package/lib-amd/components/PieChart/PieChart.types.js.map +1 -0
- package/lib-amd/components/PieChart/index.d.ts +2 -0
- package/lib-amd/components/PieChart/index.js +7 -0
- package/lib-amd/components/PieChart/index.js.map +1 -0
- package/lib-amd/components/SankeyChart/SankeyChart.base.d.ts +95 -0
- package/lib-amd/components/SankeyChart/SankeyChart.base.js +669 -0
- package/lib-amd/components/SankeyChart/SankeyChart.base.js.map +1 -0
- package/lib-amd/components/SankeyChart/SankeyChart.d.ts +3 -0
- package/lib-amd/components/SankeyChart/SankeyChart.js +8 -0
- package/lib-amd/components/SankeyChart/SankeyChart.js.map +1 -0
- package/lib-amd/components/SankeyChart/SankeyChart.styles.d.ts +2 -0
- package/lib-amd/components/SankeyChart/SankeyChart.styles.js +62 -0
- package/lib-amd/components/SankeyChart/SankeyChart.styles.js.map +1 -0
- package/lib-amd/components/SankeyChart/SankeyChart.types.d.ts +83 -0
- package/lib-amd/components/SankeyChart/SankeyChart.types.js +5 -0
- package/lib-amd/components/SankeyChart/SankeyChart.types.js.map +1 -0
- package/lib-amd/components/SankeyChart/index.d.ts +2 -0
- package/lib-amd/components/SankeyChart/index.js +7 -0
- package/lib-amd/components/SankeyChart/index.js.map +1 -0
- package/lib-amd/components/Sparkline/Sparkline.base.d.ts +20 -0
- package/lib-amd/components/Sparkline/Sparkline.base.js +74 -0
- package/lib-amd/components/Sparkline/Sparkline.base.js.map +1 -0
- package/lib-amd/components/Sparkline/Sparkline.d.ts +3 -0
- package/lib-amd/components/Sparkline/Sparkline.js +8 -0
- package/lib-amd/components/Sparkline/Sparkline.js.map +1 -0
- package/lib-amd/components/Sparkline/Sparkline.styles.d.ts +2 -0
- package/lib-amd/components/Sparkline/Sparkline.styles.js +15 -0
- package/lib-amd/components/Sparkline/Sparkline.styles.js.map +1 -0
- package/lib-amd/components/Sparkline/Sparkline.types.d.ts +51 -0
- package/lib-amd/components/Sparkline/Sparkline.types.js +5 -0
- package/lib-amd/components/Sparkline/Sparkline.types.js.map +1 -0
- package/lib-amd/components/Sparkline/index.d.ts +2 -0
- package/lib-amd/components/Sparkline/index.js +7 -0
- package/lib-amd/components/Sparkline/index.js.map +1 -0
- package/lib-amd/components/StackedBarChart/MultiStackedBarChart.base.d.ts +56 -0
- package/lib-amd/components/StackedBarChart/MultiStackedBarChart.base.js +351 -0
- package/lib-amd/components/StackedBarChart/MultiStackedBarChart.base.js.map +1 -0
- package/lib-amd/components/StackedBarChart/MultiStackedBarChart.d.ts +3 -0
- package/lib-amd/components/StackedBarChart/MultiStackedBarChart.js +8 -0
- package/lib-amd/components/StackedBarChart/MultiStackedBarChart.js.map +1 -0
- package/lib-amd/components/StackedBarChart/MultiStackedBarChart.styles.d.ts +2 -0
- package/lib-amd/components/StackedBarChart/MultiStackedBarChart.styles.js +93 -0
- package/lib-amd/components/StackedBarChart/MultiStackedBarChart.styles.js.map +1 -0
- package/lib-amd/components/StackedBarChart/MultiStackedBarChart.types.d.ts +198 -0
- package/lib-amd/components/StackedBarChart/MultiStackedBarChart.types.js +11 -0
- package/lib-amd/components/StackedBarChart/MultiStackedBarChart.types.js.map +1 -0
- package/lib-amd/components/StackedBarChart/StackedBarChart.base.d.ts +51 -0
- package/lib-amd/components/StackedBarChart/StackedBarChart.base.js +308 -0
- package/lib-amd/components/StackedBarChart/StackedBarChart.base.js.map +1 -0
- package/lib-amd/components/StackedBarChart/StackedBarChart.d.ts +3 -0
- package/lib-amd/components/StackedBarChart/StackedBarChart.js +8 -0
- package/lib-amd/components/StackedBarChart/StackedBarChart.js.map +1 -0
- package/lib-amd/components/StackedBarChart/StackedBarChart.styles.d.ts +2 -0
- package/lib-amd/components/StackedBarChart/StackedBarChart.styles.js +108 -0
- package/lib-amd/components/StackedBarChart/StackedBarChart.styles.js.map +1 -0
- package/lib-amd/components/StackedBarChart/StackedBarChart.types.d.ts +210 -0
- package/lib-amd/components/StackedBarChart/StackedBarChart.types.js +5 -0
- package/lib-amd/components/StackedBarChart/StackedBarChart.types.js.map +1 -0
- package/lib-amd/components/StackedBarChart/index.d.ts +5 -0
- package/lib-amd/components/StackedBarChart/index.js +10 -0
- package/lib-amd/components/StackedBarChart/index.js.map +1 -0
- package/lib-amd/components/TreeChart/TreeChart.base.d.ts +18 -0
- package/lib-amd/components/TreeChart/TreeChart.base.js +314 -0
- package/lib-amd/components/TreeChart/TreeChart.base.js.map +1 -0
- package/lib-amd/components/TreeChart/TreeChart.d.ts +3 -0
- package/lib-amd/components/TreeChart/TreeChart.js +7 -0
- package/lib-amd/components/TreeChart/TreeChart.js.map +1 -0
- package/lib-amd/components/TreeChart/TreeChart.styles.d.ts +2 -0
- package/lib-amd/components/TreeChart/TreeChart.styles.js +34 -0
- package/lib-amd/components/TreeChart/TreeChart.styles.js.map +1 -0
- package/lib-amd/components/TreeChart/TreeChart.types.d.ts +197 -0
- package/lib-amd/components/TreeChart/TreeChart.types.js +28 -0
- package/lib-amd/components/TreeChart/TreeChart.types.js.map +1 -0
- package/lib-amd/components/TreeChart/index.d.ts +2 -0
- package/lib-amd/components/TreeChart/index.js +7 -0
- package/lib-amd/components/TreeChart/index.js.map +1 -0
- package/lib-amd/components/VerticalBarChart/VerticalBarChart.base.d.ts +74 -0
- package/lib-amd/components/VerticalBarChart/VerticalBarChart.base.js +529 -0
- package/lib-amd/components/VerticalBarChart/VerticalBarChart.base.js.map +1 -0
- package/lib-amd/components/VerticalBarChart/VerticalBarChart.d.ts +3 -0
- package/lib-amd/components/VerticalBarChart/VerticalBarChart.js +8 -0
- package/lib-amd/components/VerticalBarChart/VerticalBarChart.js.map +1 -0
- package/lib-amd/components/VerticalBarChart/VerticalBarChart.styles.d.ts +2 -0
- package/lib-amd/components/VerticalBarChart/VerticalBarChart.styles.js +32 -0
- package/lib-amd/components/VerticalBarChart/VerticalBarChart.styles.js.map +1 -0
- package/lib-amd/components/VerticalBarChart/VerticalBarChart.types.d.ts +114 -0
- package/lib-amd/components/VerticalBarChart/VerticalBarChart.types.js +5 -0
- package/lib-amd/components/VerticalBarChart/VerticalBarChart.types.js.map +1 -0
- package/lib-amd/components/VerticalBarChart/index.d.ts +2 -0
- package/lib-amd/components/VerticalBarChart/index.js +7 -0
- package/lib-amd/components/VerticalBarChart/index.js.map +1 -0
- package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.base.d.ts +85 -0
- package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.base.js +659 -0
- package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.base.js.map +1 -0
- package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.d.ts +3 -0
- package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.js +8 -0
- package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.js.map +1 -0
- package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.styles.d.ts +2 -0
- package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.styles.js +22 -0
- package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.styles.js.map +1 -0
- package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.types.d.ts +142 -0
- package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.types.js +5 -0
- package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.types.js.map +1 -0
- package/lib-amd/components/VerticalStackedBarChart/index.d.ts +2 -0
- package/lib-amd/components/VerticalStackedBarChart/index.js +7 -0
- package/lib-amd/components/VerticalStackedBarChart/index.js.map +1 -0
- package/lib-amd/index.d.ts +19 -0
- package/lib-amd/index.js +23 -0
- package/lib-amd/index.js.map +1 -0
- package/lib-amd/types/IDataPoint.d.ts +545 -0
- package/lib-amd/types/IDataPoint.js +5 -0
- package/lib-amd/types/IDataPoint.js.map +1 -0
- package/lib-amd/types/IEventAnnotation.d.ts +6 -0
- package/lib-amd/types/IEventAnnotation.js +5 -0
- package/lib-amd/types/IEventAnnotation.js.map +1 -0
- package/lib-amd/types/ILegendDataItem.d.ts +10 -0
- package/lib-amd/types/ILegendDataItem.js +5 -0
- package/lib-amd/types/ILegendDataItem.js.map +1 -0
- package/lib-amd/types/index.d.ts +2 -0
- package/lib-amd/types/index.js +7 -0
- package/lib-amd/types/index.js.map +1 -0
- package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.base.d.ts +6 -0
- package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.base.js +39 -0
- package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.base.js.map +1 -0
- package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.d.ts +3 -0
- package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.js +8 -0
- package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.js.map +1 -0
- package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.styles.d.ts +2 -0
- package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.styles.js +87 -0
- package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.styles.js.map +1 -0
- package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.types.d.ts +105 -0
- package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.types.js +5 -0
- package/lib-amd/utilities/ChartHoverCard/ChartHoverCard.types.js.map +1 -0
- package/lib-amd/utilities/ChartHoverCard/index.d.ts +3 -0
- package/lib-amd/utilities/ChartHoverCard/index.js +8 -0
- package/lib-amd/utilities/ChartHoverCard/index.js.map +1 -0
- package/lib-amd/utilities/FocusableTooltipText.d.ts +27 -0
- package/lib-amd/utilities/FocusableTooltipText.js +54 -0
- package/lib-amd/utilities/FocusableTooltipText.js.map +1 -0
- package/lib-amd/utilities/colors.d.ts +51 -0
- package/lib-amd/utilities/colors.js +139 -0
- package/lib-amd/utilities/colors.js.map +1 -0
- package/lib-amd/utilities/index.d.ts +3 -0
- package/lib-amd/utilities/index.js +8 -0
- package/lib-amd/utilities/index.js.map +1 -0
- package/lib-amd/utilities/utilities.d.ts +377 -0
- package/lib-amd/utilities/utilities.js +888 -0
- package/lib-amd/utilities/utilities.js.map +1 -0
- package/lib-amd/version.d.ts +1 -0
- package/lib-amd/version.js +6 -0
- package/lib-amd/version.js.map +1 -0
- package/lib-commonjs/version.js +1 -1
- package/lib-commonjs/version.js.map +1 -1
- package/package.json +7 -6
|
@@ -0,0 +1,381 @@
|
|
|
1
|
+
import { __assign, __extends } from "tslib";
|
|
2
|
+
import * as React from 'react';
|
|
3
|
+
import { max as d3Max } from 'd3-array';
|
|
4
|
+
import { select as d3Select } from 'd3-selection';
|
|
5
|
+
import { scaleBand as d3ScaleBand, scaleLinear as d3ScaleLinear } from 'd3-scale';
|
|
6
|
+
import { classNamesFunction, getId, getRTL, memoizeFunction, warnDeprecations } from '@fluentui/react/lib/Utilities';
|
|
7
|
+
import { DirectionalHint } from '@fluentui/react/lib/Callout';
|
|
8
|
+
import { FocusZoneDirection } from '@fluentui/react-focus';
|
|
9
|
+
import { ChartTypes, getAccessibleDataObject, tooltipOfXAxislabels, getTypeOfAxis, } from '../../utilities/index';
|
|
10
|
+
import { CartesianChart, Legends, } from '../../index';
|
|
11
|
+
import { formatPrefix as d3FormatPrefix } from 'd3-format';
|
|
12
|
+
var COMPONENT_NAME = 'GROUPED VERTICAL BAR CHART';
|
|
13
|
+
var getClassNames = classNamesFunction();
|
|
14
|
+
var MIN_DOMAIN_MARGIN = 8;
|
|
15
|
+
var X1_INNER_PADDING = 0.1;
|
|
16
|
+
// x1_inner_padding = space_between_bars / (space_between_bars + bar_width)
|
|
17
|
+
// => space_between_bars = (x1_inner_padding / (1 - x1_inner_padding)) * bar_width
|
|
18
|
+
/** Rate at which the space between the bars in a group changes wrt the bar width */
|
|
19
|
+
var BAR_GAP_RATE = X1_INNER_PADDING / (1 - X1_INNER_PADDING);
|
|
20
|
+
var GroupedVerticalBarChartBase = /** @class */ (function (_super) {
|
|
21
|
+
__extends(GroupedVerticalBarChartBase, _super);
|
|
22
|
+
function GroupedVerticalBarChartBase(props) {
|
|
23
|
+
var _this = _super.call(this, props) || this;
|
|
24
|
+
_this._isRtl = getRTL();
|
|
25
|
+
_this._getGraphData = function (xScale, yScale, containerHeight, containerWidth, xElement) {
|
|
26
|
+
var xScale0 = _this._createX0Scale(containerWidth);
|
|
27
|
+
var xScale1 = _this._createX1Scale(xScale0);
|
|
28
|
+
var allGroupsBars = [];
|
|
29
|
+
_this._datasetForBars.forEach(function (singleSet) {
|
|
30
|
+
allGroupsBars.push(_this._buildGraph(singleSet, xScale0, xScale1, containerHeight, xElement));
|
|
31
|
+
});
|
|
32
|
+
_this._groupedVerticalBarGraph = allGroupsBars;
|
|
33
|
+
};
|
|
34
|
+
_this._getMargins = function (margins) { return (_this.margins = margins); };
|
|
35
|
+
_this._createDataSetOfGVBC = function (points) {
|
|
36
|
+
var keys = [];
|
|
37
|
+
var xAxisLabels = points.map(function (singlePoint) { return singlePoint.name; });
|
|
38
|
+
points[0].series.forEach(function (singleKey) {
|
|
39
|
+
keys.push(singleKey.key);
|
|
40
|
+
});
|
|
41
|
+
var datasetForBars = _this._createDataset(points);
|
|
42
|
+
return {
|
|
43
|
+
keys: keys,
|
|
44
|
+
xAxisLabels: xAxisLabels,
|
|
45
|
+
datasetForBars: datasetForBars,
|
|
46
|
+
};
|
|
47
|
+
};
|
|
48
|
+
_this._getCustomizedCallout = function () {
|
|
49
|
+
return _this.props.onRenderCalloutPerDataPoint
|
|
50
|
+
? _this.props.onRenderCalloutPerDataPoint(_this.state.dataPointCalloutProps)
|
|
51
|
+
: null;
|
|
52
|
+
};
|
|
53
|
+
_this._getOpacity = function (legendTitle) {
|
|
54
|
+
var opacity = _this._legendHighlighted(legendTitle) || _this._noLegendHighlighted() ? '' : '0.1';
|
|
55
|
+
return opacity;
|
|
56
|
+
};
|
|
57
|
+
_this._onBarHover = function (pointData,
|
|
58
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
59
|
+
groupData, mouseEvent) {
|
|
60
|
+
mouseEvent.persist();
|
|
61
|
+
if (_this._calloutAnchorPoint !== pointData) {
|
|
62
|
+
_this._calloutAnchorPoint = pointData;
|
|
63
|
+
_this.setState({
|
|
64
|
+
refSelected: mouseEvent,
|
|
65
|
+
/** Show the callout if highlighted bar is hovered and Hide it if unhighlighted bar is hovered */
|
|
66
|
+
isCalloutVisible: _this.state.selectedLegend === '' || _this.state.selectedLegend === pointData.legend,
|
|
67
|
+
calloutLegend: pointData.legend,
|
|
68
|
+
dataForHoverCard: pointData.data,
|
|
69
|
+
color: pointData.color,
|
|
70
|
+
xCalloutValue: pointData.xAxisCalloutData,
|
|
71
|
+
yCalloutValue: pointData.yAxisCalloutData,
|
|
72
|
+
dataPointCalloutProps: pointData,
|
|
73
|
+
callOutAccessibilityData: _this.props.isCalloutForStack
|
|
74
|
+
? groupData.stackCallOutAccessibilityData
|
|
75
|
+
: pointData.callOutAccessibilityData,
|
|
76
|
+
YValueHover: groupData.groupSeries,
|
|
77
|
+
hoverXValue: pointData.xAxisCalloutData,
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
};
|
|
81
|
+
_this._onBarLeave = function () {
|
|
82
|
+
/**/
|
|
83
|
+
};
|
|
84
|
+
_this._handleChartMouseLeave = function () {
|
|
85
|
+
_this._calloutAnchorPoint = null;
|
|
86
|
+
_this.setState({ isCalloutVisible: false });
|
|
87
|
+
};
|
|
88
|
+
_this._onBarFocus = function (pointData,
|
|
89
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
90
|
+
groupData, refArrayIndexNumber) {
|
|
91
|
+
_this._refArray.forEach(function (obj, index) {
|
|
92
|
+
if (obj.index === pointData.legend && refArrayIndexNumber === index) {
|
|
93
|
+
_this.setState({
|
|
94
|
+
refSelected: obj.refElement,
|
|
95
|
+
/** Show the callout if highlighted bar is focused and Hide it if unhighlighted bar is focused */
|
|
96
|
+
isCalloutVisible: _this.state.selectedLegend === '' || _this.state.selectedLegend === pointData.legend,
|
|
97
|
+
calloutLegend: pointData.legend,
|
|
98
|
+
dataForHoverCard: pointData.data,
|
|
99
|
+
color: pointData.color,
|
|
100
|
+
xCalloutValue: pointData.xAxisCalloutData,
|
|
101
|
+
yCalloutValue: pointData.yAxisCalloutData,
|
|
102
|
+
dataPointCalloutProps: pointData,
|
|
103
|
+
callOutAccessibilityData: _this.props.isCalloutForStack
|
|
104
|
+
? groupData.stackCallOutAccessibilityData
|
|
105
|
+
: pointData.callOutAccessibilityData,
|
|
106
|
+
YValueHover: groupData.groupSeries,
|
|
107
|
+
hoverXValue: pointData.xAxisCalloutData,
|
|
108
|
+
});
|
|
109
|
+
}
|
|
110
|
+
});
|
|
111
|
+
};
|
|
112
|
+
_this._redirectToUrl = function (href) {
|
|
113
|
+
href ? (window.location.href = href) : '';
|
|
114
|
+
};
|
|
115
|
+
_this._buildGraph = function (
|
|
116
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
117
|
+
singleSet,
|
|
118
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
119
|
+
xScale0,
|
|
120
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
121
|
+
xScale1, containerHeight, xElement) {
|
|
122
|
+
var singleGroup = [];
|
|
123
|
+
var barLabelsForGroup = [];
|
|
124
|
+
var yBarScale = d3ScaleLinear()
|
|
125
|
+
.domain([0, _this._yMax])
|
|
126
|
+
.range([0, containerHeight - _this.margins.bottom - _this.margins.top]);
|
|
127
|
+
var tempDataSet = Object.keys(_this._datasetForBars[0]).splice(0, _this._keys.length);
|
|
128
|
+
tempDataSet.forEach(function (datasetKey, index) {
|
|
129
|
+
var refIndexNumber = singleSet.indexNum * tempDataSet.length + index;
|
|
130
|
+
var pointData = singleSet[datasetKey];
|
|
131
|
+
var xPoint = xScale1(datasetKey);
|
|
132
|
+
var yPoint = Math.max(containerHeight - _this.margins.bottom - yBarScale(pointData.data), 0);
|
|
133
|
+
// Not rendering data with 0.
|
|
134
|
+
pointData.data &&
|
|
135
|
+
singleGroup.push(React.createElement("rect", { className: _this._classNames.opacityChangeOnHover, key: singleSet.indexNum + "-" + index, height: Math.max(yBarScale(pointData.data), 0), width: _this._barWidth, x: xPoint, y: yPoint, "data-is-focusable": !_this.props.hideTooltip, opacity: _this._getOpacity(pointData.legend), ref: function (e) {
|
|
136
|
+
_this._refCallback(e, pointData.legend, refIndexNumber);
|
|
137
|
+
}, fill: pointData.color, onMouseOver: _this._onBarHover.bind(_this, pointData, singleSet), onMouseMove: _this._onBarHover.bind(_this, pointData, singleSet), onMouseOut: _this._onBarLeave, onFocus: _this._onBarFocus.bind(_this, pointData, singleSet, refIndexNumber), onBlur: _this._onBarLeave, onClick: _this.props.href ? _this._redirectToUrl.bind(_this, _this.props.href) : pointData.onClick, "aria-label": _this._getAriaLabel(pointData, singleSet.xAxisPoint), role: "img" }));
|
|
138
|
+
if (pointData.data && !_this.props.hideLabels && _this._barWidth >= 16) {
|
|
139
|
+
barLabelsForGroup.push(React.createElement("text", { x: xPoint + _this._barWidth / 2, y: yPoint - 6, textAnchor: "middle", className: _this._classNames.barLabel, "aria-hidden": true }, d3FormatPrefix(pointData.data < 1000 ? '.2~' : '.1', pointData.data)(pointData.data)));
|
|
140
|
+
}
|
|
141
|
+
});
|
|
142
|
+
// Used to display tooltip at x axis labels.
|
|
143
|
+
if (!_this.props.wrapXAxisLables && _this.props.showXAxisLablesTooltip) {
|
|
144
|
+
var xAxisElement = d3Select(xElement).call(xScale0);
|
|
145
|
+
try {
|
|
146
|
+
document.getElementById(_this._tooltipId) && document.getElementById(_this._tooltipId).remove();
|
|
147
|
+
// eslint-disable-next-line no-empty
|
|
148
|
+
}
|
|
149
|
+
catch (e) { }
|
|
150
|
+
var tooltipProps = {
|
|
151
|
+
tooltipCls: _this._classNames.tooltip,
|
|
152
|
+
id: _this._tooltipId,
|
|
153
|
+
xAxis: xAxisElement,
|
|
154
|
+
};
|
|
155
|
+
xAxisElement && tooltipOfXAxislabels(tooltipProps);
|
|
156
|
+
}
|
|
157
|
+
return (React.createElement("g", { key: singleSet.indexNum, transform: "translate(" + xScale0(singleSet.xAxisPoint) + ", 0)" },
|
|
158
|
+
singleGroup,
|
|
159
|
+
barLabelsForGroup));
|
|
160
|
+
};
|
|
161
|
+
_this._createDataset = function (points) {
|
|
162
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
163
|
+
var datasetForBars = [];
|
|
164
|
+
var dataset = [];
|
|
165
|
+
points.forEach(function (point, index) {
|
|
166
|
+
var singleDatasetPoint = {};
|
|
167
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
168
|
+
var singleDatasetPointForBars = {};
|
|
169
|
+
var singleDataSeries = [];
|
|
170
|
+
point.series.forEach(function (seriesPoint) {
|
|
171
|
+
singleDatasetPoint[seriesPoint.key] = seriesPoint.data;
|
|
172
|
+
singleDatasetPointForBars[seriesPoint.key] = __assign({}, seriesPoint);
|
|
173
|
+
singleDataSeries.push(seriesPoint);
|
|
174
|
+
});
|
|
175
|
+
singleDatasetPointForBars.xAxisPoint = point.name;
|
|
176
|
+
singleDatasetPointForBars.indexNum = index;
|
|
177
|
+
singleDatasetPointForBars.groupSeries = singleDataSeries;
|
|
178
|
+
singleDatasetPointForBars.stackCallOutAccessibilityData = point.stackCallOutAccessibilityData;
|
|
179
|
+
datasetForBars.push(singleDatasetPointForBars);
|
|
180
|
+
dataset.push(singleDatasetPoint);
|
|
181
|
+
});
|
|
182
|
+
_this._dataset = dataset;
|
|
183
|
+
return datasetForBars;
|
|
184
|
+
};
|
|
185
|
+
// For grouped vertical bar chart, First need to define total scale (from start to end)
|
|
186
|
+
// From that need to define scale for single group of bars - done by createX1Scale
|
|
187
|
+
_this._createX0Scale = function (containerWidth) {
|
|
188
|
+
var x0Axis = d3ScaleBand()
|
|
189
|
+
.domain(_this._xAxisLabels)
|
|
190
|
+
.range(_this._isRtl
|
|
191
|
+
? [containerWidth - _this.margins.right - _this._domainMargin, _this.margins.left + _this._domainMargin]
|
|
192
|
+
: [_this.margins.left + _this._domainMargin, containerWidth - _this.margins.right - _this._domainMargin])
|
|
193
|
+
// x0_inner_padding = space_between_groups / (space_between_groups + group_width)
|
|
194
|
+
// space_between_groups = 2 * bar_width
|
|
195
|
+
// group_width = this._keys.length * bar_width + (this._keys.length - 1) * space_between_bars
|
|
196
|
+
.paddingInner(2 / (2 + _this._keys.length + (_this._keys.length - 1) * BAR_GAP_RATE));
|
|
197
|
+
return x0Axis;
|
|
198
|
+
};
|
|
199
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
200
|
+
_this._createX1Scale = function (xScale0) {
|
|
201
|
+
var bandWidth = xScale0.bandwidth();
|
|
202
|
+
return d3ScaleBand()
|
|
203
|
+
.domain(_this._keys)
|
|
204
|
+
.range(_this._isRtl ? [bandWidth, 0] : [0, bandWidth])
|
|
205
|
+
.paddingInner(X1_INNER_PADDING);
|
|
206
|
+
};
|
|
207
|
+
_this._closeCallout = function () {
|
|
208
|
+
_this.setState({
|
|
209
|
+
isCalloutVisible: false,
|
|
210
|
+
});
|
|
211
|
+
};
|
|
212
|
+
_this._getLegendData = function (points, palette) {
|
|
213
|
+
var data = points;
|
|
214
|
+
var defaultPalette = [palette.blueLight, palette.blue, palette.blueMid, palette.red, palette.black];
|
|
215
|
+
var actions = [];
|
|
216
|
+
data.forEach(function (singleChartData) {
|
|
217
|
+
singleChartData.series.forEach(function (point) {
|
|
218
|
+
var color = point.color ? point.color : defaultPalette[Math.floor(Math.random() * 4 + 1)];
|
|
219
|
+
var checkSimilarLegends = actions.filter(function (leg) { return leg.title === point.legend && leg.color === color; });
|
|
220
|
+
if (checkSimilarLegends.length > 0) {
|
|
221
|
+
return;
|
|
222
|
+
}
|
|
223
|
+
var legend = {
|
|
224
|
+
title: point.legend,
|
|
225
|
+
color: color,
|
|
226
|
+
action: function () {
|
|
227
|
+
_this._onLegendClick(point.legend);
|
|
228
|
+
},
|
|
229
|
+
hoverAction: function () {
|
|
230
|
+
_this._handleChartMouseLeave();
|
|
231
|
+
_this._onLegendHover(point.legend);
|
|
232
|
+
},
|
|
233
|
+
onMouseOutAction: function () {
|
|
234
|
+
_this._onLegendLeave();
|
|
235
|
+
},
|
|
236
|
+
};
|
|
237
|
+
actions.push(legend);
|
|
238
|
+
});
|
|
239
|
+
});
|
|
240
|
+
return (React.createElement(Legends, __assign({ legends: actions, overflowProps: _this.props.legendsOverflowProps, enabledWrapLines: _this.props.enabledLegendsWrapLines, focusZonePropsInHoverCard: _this.props.focusZonePropsForLegendsInHoverCard }, _this.props.legendProps)));
|
|
241
|
+
};
|
|
242
|
+
_this._getAxisData = function (yAxisData) {
|
|
243
|
+
if (yAxisData && yAxisData.yAxisDomainValues.length) {
|
|
244
|
+
var domainValue = yAxisData.yAxisDomainValues;
|
|
245
|
+
_this._yMax = Math.max(domainValue[domainValue.length - 1], _this.props.yMaxValue || 0);
|
|
246
|
+
}
|
|
247
|
+
};
|
|
248
|
+
/**
|
|
249
|
+
* This function checks if the given legend is highlighted or not.
|
|
250
|
+
* A legend can be highlighted in 2 ways:
|
|
251
|
+
* 1. selection: if the user clicks on it
|
|
252
|
+
* 2. hovering: if there is no selected legend and the user hovers over it
|
|
253
|
+
*/
|
|
254
|
+
_this._legendHighlighted = function (legendTitle) {
|
|
255
|
+
return (_this.state.selectedLegend === legendTitle ||
|
|
256
|
+
(_this.state.selectedLegend === '' && _this.state.activeLegend === legendTitle));
|
|
257
|
+
};
|
|
258
|
+
/**
|
|
259
|
+
* This function checks if none of the legends is selected or hovered.
|
|
260
|
+
*/
|
|
261
|
+
_this._noLegendHighlighted = function () {
|
|
262
|
+
return _this.state.selectedLegend === '' && _this.state.activeLegend === '';
|
|
263
|
+
};
|
|
264
|
+
_this._getAriaLabel = function (point, xAxisPoint) {
|
|
265
|
+
var _a;
|
|
266
|
+
var xValue = point.xAxisCalloutData || xAxisPoint;
|
|
267
|
+
var legend = point.legend;
|
|
268
|
+
var yValue = point.yAxisCalloutData || point.data;
|
|
269
|
+
return ((_a = point.callOutAccessibilityData) === null || _a === void 0 ? void 0 : _a.ariaLabel) || xValue + ". " + legend + ", " + yValue + ".";
|
|
270
|
+
};
|
|
271
|
+
_this._getDomainMargins = function (containerWidth) {
|
|
272
|
+
/** Total width available to render the bars */
|
|
273
|
+
var totalWidth = containerWidth - (_this.margins.left + MIN_DOMAIN_MARGIN) - (_this.margins.right + MIN_DOMAIN_MARGIN);
|
|
274
|
+
var barWidth = Math.min(_this.props.barwidth || 16, 24);
|
|
275
|
+
var groupWidth = _this._keys.length * barWidth + (_this._keys.length - 1) * BAR_GAP_RATE * barWidth; // (i)
|
|
276
|
+
/** Total width required to render the bars. Directly proportional to bar width */
|
|
277
|
+
var reqWidth = _this._xAxisLabels.length * groupWidth + (_this._xAxisLabels.length - 1) * 2 * barWidth; // (ii)
|
|
278
|
+
_this._domainMargin = MIN_DOMAIN_MARGIN;
|
|
279
|
+
if (totalWidth >= reqWidth) {
|
|
280
|
+
// Center align the chart by setting equal left and right margins for domain
|
|
281
|
+
_this._domainMargin += (totalWidth - reqWidth) / 2;
|
|
282
|
+
}
|
|
283
|
+
else {
|
|
284
|
+
// From (i) and (ii)
|
|
285
|
+
/** Maximum possible group width to maintain 2:1 spacing */
|
|
286
|
+
var maxBandwidth = totalWidth /
|
|
287
|
+
(_this._xAxisLabels.length +
|
|
288
|
+
(_this._xAxisLabels.length - 1) * (2 / (_this._keys.length + (_this._keys.length - 1) * BAR_GAP_RATE)));
|
|
289
|
+
groupWidth = maxBandwidth;
|
|
290
|
+
// From (i)
|
|
291
|
+
barWidth = groupWidth / (_this._keys.length + (_this._keys.length - 1) * BAR_GAP_RATE);
|
|
292
|
+
}
|
|
293
|
+
_this._barWidth = barWidth;
|
|
294
|
+
return __assign(__assign({}, _this.margins), { left: _this.margins.left + _this._domainMargin, right: _this.margins.right + _this._domainMargin });
|
|
295
|
+
};
|
|
296
|
+
_this._createSet = memoizeFunction(function (data) { return _this._createDataSetOfGVBC(data); });
|
|
297
|
+
_this.state = {
|
|
298
|
+
color: '',
|
|
299
|
+
dataForHoverCard: 0,
|
|
300
|
+
isCalloutVisible: false,
|
|
301
|
+
refSelected: null,
|
|
302
|
+
selectedLegend: '',
|
|
303
|
+
xCalloutValue: '',
|
|
304
|
+
yCalloutValue: '',
|
|
305
|
+
YValueHover: [],
|
|
306
|
+
hoverXValue: '',
|
|
307
|
+
calloutLegend: '',
|
|
308
|
+
activeLegend: '',
|
|
309
|
+
};
|
|
310
|
+
warnDeprecations(COMPONENT_NAME, props, {
|
|
311
|
+
showYAxisGridLines: 'Dont use this property. Lines are drawn by default',
|
|
312
|
+
showXAxisPath: 'Dont use this property. Axis line removed default.',
|
|
313
|
+
showYAxisPath: 'Dont use this property. No need to display Y axis path. Handling default',
|
|
314
|
+
showXAxisGridLines: 'Dont use this property. Handling with default value.',
|
|
315
|
+
legendColor: 'Dont use this property. colour will pick from given data.',
|
|
316
|
+
});
|
|
317
|
+
_this._refArray = [];
|
|
318
|
+
_this._calloutId = getId('callout');
|
|
319
|
+
_this._tooltipId = getId('GVBCTooltipId_');
|
|
320
|
+
_this._domainMargin = MIN_DOMAIN_MARGIN;
|
|
321
|
+
return _this;
|
|
322
|
+
}
|
|
323
|
+
GroupedVerticalBarChartBase.prototype.render = function () {
|
|
324
|
+
var _this = this;
|
|
325
|
+
var points = this.props.data;
|
|
326
|
+
var _a = this._createSet(points), keys = _a.keys, xAxisLabels = _a.xAxisLabels, datasetForBars = _a.datasetForBars;
|
|
327
|
+
this._keys = keys;
|
|
328
|
+
this._xAxisLabels = xAxisLabels;
|
|
329
|
+
this._datasetForBars = datasetForBars;
|
|
330
|
+
this._xAxisType = getTypeOfAxis(points[0].name, true);
|
|
331
|
+
var legends = this._getLegendData(points, this.props.theme.palette);
|
|
332
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
333
|
+
var yMax = d3Max(this._dataset, function (point) { return d3Max(_this._keys, function (key) { return point[key]; }); });
|
|
334
|
+
this._yMax = Math.max(yMax, this.props.yMaxValue || 0);
|
|
335
|
+
this._classNames = getClassNames(this.props.styles, {
|
|
336
|
+
theme: this.props.theme,
|
|
337
|
+
href: this.props.href,
|
|
338
|
+
});
|
|
339
|
+
var calloutProps = __assign(__assign(__assign({ target: this.state.refSelected, isCalloutVisible: this.state.isCalloutVisible, directionalHint: DirectionalHint.topAutoEdge, id: "toolTip" + this._calloutId, gapSpace: 15, isBeakVisible: false, setInitialFocus: true, color: this.state.color, Legend: this.state.calloutLegend, XValue: this.state.xCalloutValue, YValue: this.state.yCalloutValue ? this.state.yCalloutValue : this.state.dataForHoverCard, YValueHover: this.state.YValueHover, hoverXValue: this.state.hoverXValue, onDismiss: this._closeCallout }, this.props.calloutProps), { preventDismissOnLostFocus: true }), getAccessibleDataObject(this.state.callOutAccessibilityData, 'text', false));
|
|
340
|
+
var tickParams = {
|
|
341
|
+
tickValues: this.props.tickValues,
|
|
342
|
+
tickFormat: this.props.tickFormat,
|
|
343
|
+
};
|
|
344
|
+
return (React.createElement(CartesianChart, __assign({}, this.props, { points: this._datasetForBars, chartType: ChartTypes.GroupedVerticalBarChart, calloutProps: calloutProps, legendBars: legends, xAxisType: this._xAxisType, datasetForXAxisDomain: this._xAxisLabels, tickParams: tickParams, tickPadding: this.props.tickPadding || 5, maxOfYVal: this._yMax, svgFocusZoneProps: {
|
|
345
|
+
direction: FocusZoneDirection.horizontal,
|
|
346
|
+
}, customizedCallout: this._getCustomizedCallout(), getmargins: this._getMargins, getGraphData: this._getGraphData, getAxisData: this._getAxisData, onChartMouseLeave: this._handleChartMouseLeave, getDomainMargins: this._getDomainMargins, xAxisInnerPadding: 2 / (2 + this._keys.length + (this._keys.length - 1) * BAR_GAP_RATE), xAxisOuterPadding: 0,
|
|
347
|
+
/* eslint-disable react/jsx-no-bind */
|
|
348
|
+
// eslint-disable-next-line react/no-children-prop
|
|
349
|
+
children: function () {
|
|
350
|
+
return React.createElement("g", null, _this._groupedVerticalBarGraph);
|
|
351
|
+
} })));
|
|
352
|
+
};
|
|
353
|
+
GroupedVerticalBarChartBase.prototype._refCallback = function (element, legendTitle, refIndexNumber) {
|
|
354
|
+
this._refArray[refIndexNumber] = { index: legendTitle, refElement: element };
|
|
355
|
+
};
|
|
356
|
+
GroupedVerticalBarChartBase.prototype._onLegendClick = function (legendTitle) {
|
|
357
|
+
if (this.state.selectedLegend === legendTitle) {
|
|
358
|
+
this.setState({
|
|
359
|
+
selectedLegend: '',
|
|
360
|
+
});
|
|
361
|
+
}
|
|
362
|
+
else {
|
|
363
|
+
this.setState({
|
|
364
|
+
selectedLegend: legendTitle,
|
|
365
|
+
});
|
|
366
|
+
}
|
|
367
|
+
};
|
|
368
|
+
GroupedVerticalBarChartBase.prototype._onLegendHover = function (legendTitle) {
|
|
369
|
+
this.setState({
|
|
370
|
+
activeLegend: legendTitle,
|
|
371
|
+
});
|
|
372
|
+
};
|
|
373
|
+
GroupedVerticalBarChartBase.prototype._onLegendLeave = function () {
|
|
374
|
+
this.setState({
|
|
375
|
+
activeLegend: '',
|
|
376
|
+
});
|
|
377
|
+
};
|
|
378
|
+
return GroupedVerticalBarChartBase;
|
|
379
|
+
}(React.Component));
|
|
380
|
+
export { GroupedVerticalBarChartBase };
|
|
381
|
+
//# sourceMappingURL=GroupedVerticalBarChart.base.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GroupedVerticalBarChart.base.js","sourceRoot":"../src/","sources":["components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.tsx"],"names":[],"mappings":"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","sourcesContent":["import * as React from 'react';\nimport { max as d3Max } from 'd3-array';\nimport { select as d3Select } from 'd3-selection';\nimport { Axis as D3Axis } from 'd3-axis';\nimport { scaleBand as d3ScaleBand, scaleLinear as d3ScaleLinear } from 'd3-scale';\nimport { classNamesFunction, getId, getRTL, memoizeFunction, warnDeprecations } from '@fluentui/react/lib/Utilities';\nimport { IProcessedStyleSet, IPalette } from '@fluentui/react/lib/Styling';\nimport { DirectionalHint } from '@fluentui/react/lib/Callout';\nimport { FocusZoneDirection } from '@fluentui/react-focus';\nimport {\n ChartTypes,\n IAxisData,\n getAccessibleDataObject,\n tooltipOfXAxislabels,\n XAxisTypes,\n getTypeOfAxis,\n} from '../../utilities/index';\nimport {\n IAccessibilityProps,\n CartesianChart,\n ILegend,\n IGroupedVerticalBarChartData,\n IGroupedVerticalBarChartProps,\n IGroupedVerticalBarChartStyleProps,\n IGroupedVerticalBarChartStyles,\n IGVBarChartSeriesPoint,\n IMargins,\n IBasestate,\n IRefArrayData,\n Legends,\n} from '../../index';\nimport { formatPrefix as d3FormatPrefix } from 'd3-format';\n\nconst COMPONENT_NAME = 'GROUPED VERTICAL BAR CHART';\nconst getClassNames = classNamesFunction<IGroupedVerticalBarChartStyleProps, IGroupedVerticalBarChartStyles>();\ntype StringAxis = D3Axis<string>;\ntype NumericAxis = D3Axis<number | { valueOf(): number }>;\n\nconst MIN_DOMAIN_MARGIN = 8;\nconst X1_INNER_PADDING = 0.1;\n// x1_inner_padding = space_between_bars / (space_between_bars + bar_width)\n// => space_between_bars = (x1_inner_padding / (1 - x1_inner_padding)) * bar_width\n/** Rate at which the space between the bars in a group changes wrt the bar width */\nconst BAR_GAP_RATE = X1_INNER_PADDING / (1 - X1_INNER_PADDING);\n\n// This interface used for - While forming datapoints from given prop \"data\" in code\ninterface IGVDataPoint {\n [key: string]: number | string;\n}\n\n// While forming datapoints from given prop \"data\" in code. These datapoints are used for to draw graph easily.\ninterface IGVSingleDataPoint {\n [key: string]: IGVDataPoint;\n}\nexport interface IGroupedVerticalBarChartState extends IBasestate {\n dataPointCalloutProps?: IGVBarChartSeriesPoint;\n callOutAccessibilityData?: IAccessibilityProps;\n calloutLegend: string;\n}\n\nexport class GroupedVerticalBarChartBase extends React.Component<\n IGroupedVerticalBarChartProps,\n IGroupedVerticalBarChartState\n> {\n private _createSet: (\n data: IGroupedVerticalBarChartData[],\n ) => // eslint-disable-next-line @typescript-eslint/no-explicit-any\n { keys: string[]; xAxisLabels: string[]; datasetForBars: any };\n private _dataset: IGVDataPoint[];\n private _keys: string[];\n private _xAxisLabels: string[];\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private _datasetForBars: any;\n private margins: IMargins;\n private _groupedVerticalBarGraph: JSX.Element[];\n private _classNames: IProcessedStyleSet<IGroupedVerticalBarChartStyles>;\n private _refArray: IRefArrayData[];\n private _yMax: number;\n private _calloutId: string;\n private _tooltipId: string;\n private _xAxisType: XAxisTypes;\n private _isRtl: boolean = getRTL();\n private _calloutAnchorPoint: IGVBarChartSeriesPoint | null;\n private _barWidth: number;\n private _domainMargin: number;\n\n public constructor(props: IGroupedVerticalBarChartProps) {\n super(props);\n this._createSet = memoizeFunction((data: IGroupedVerticalBarChartData[]) => this._createDataSetOfGVBC(data));\n this.state = {\n color: '',\n dataForHoverCard: 0,\n isCalloutVisible: false,\n refSelected: null,\n selectedLegend: '',\n xCalloutValue: '',\n yCalloutValue: '',\n YValueHover: [],\n hoverXValue: '',\n calloutLegend: '',\n activeLegend: '',\n };\n warnDeprecations(COMPONENT_NAME, props, {\n showYAxisGridLines: 'Dont use this property. Lines are drawn by default',\n showXAxisPath: 'Dont use this property. Axis line removed default.',\n showYAxisPath: 'Dont use this property. No need to display Y axis path. Handling default',\n showXAxisGridLines: 'Dont use this property. Handling with default value.',\n legendColor: 'Dont use this property. colour will pick from given data.',\n });\n this._refArray = [];\n this._calloutId = getId('callout');\n this._tooltipId = getId('GVBCTooltipId_');\n this._domainMargin = MIN_DOMAIN_MARGIN;\n }\n\n public render(): React.ReactNode {\n const points = this.props.data;\n const { keys, xAxisLabels, datasetForBars } = this._createSet(points);\n this._keys = keys;\n this._xAxisLabels = xAxisLabels;\n this._datasetForBars = datasetForBars;\n this._xAxisType = getTypeOfAxis(points[0].name, true) as XAxisTypes;\n const legends: JSX.Element = this._getLegendData(points, this.props.theme!.palette);\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const yMax = d3Max(this._dataset, (point: any) => d3Max(this._keys, (key: string) => point[key]));\n this._yMax = Math.max(yMax, this.props.yMaxValue || 0);\n this._classNames = getClassNames(this.props.styles!, {\n theme: this.props.theme!,\n href: this.props.href!,\n });\n const calloutProps = {\n target: this.state.refSelected,\n isCalloutVisible: this.state.isCalloutVisible,\n directionalHint: DirectionalHint.topAutoEdge,\n id: `toolTip${this._calloutId}`,\n gapSpace: 15,\n isBeakVisible: false,\n setInitialFocus: true,\n color: this.state.color,\n Legend: this.state.calloutLegend,\n XValue: this.state.xCalloutValue,\n YValue: this.state.yCalloutValue ? this.state.yCalloutValue : this.state.dataForHoverCard,\n YValueHover: this.state.YValueHover,\n hoverXValue: this.state.hoverXValue,\n onDismiss: this._closeCallout,\n ...this.props.calloutProps,\n preventDismissOnLostFocus: true,\n ...getAccessibleDataObject(this.state.callOutAccessibilityData, 'text', false),\n };\n const tickParams = {\n tickValues: this.props.tickValues!,\n tickFormat: this.props.tickFormat!,\n };\n\n return (\n <CartesianChart\n {...this.props}\n points={this._datasetForBars}\n chartType={ChartTypes.GroupedVerticalBarChart}\n calloutProps={calloutProps}\n legendBars={legends}\n xAxisType={this._xAxisType}\n datasetForXAxisDomain={this._xAxisLabels}\n tickParams={tickParams}\n tickPadding={this.props.tickPadding || 5}\n maxOfYVal={this._yMax}\n svgFocusZoneProps={{\n direction: FocusZoneDirection.horizontal,\n }}\n customizedCallout={this._getCustomizedCallout()}\n getmargins={this._getMargins}\n getGraphData={this._getGraphData}\n getAxisData={this._getAxisData}\n onChartMouseLeave={this._handleChartMouseLeave}\n getDomainMargins={this._getDomainMargins}\n xAxisInnerPadding={2 / (2 + this._keys.length + (this._keys.length - 1) * BAR_GAP_RATE)}\n xAxisOuterPadding={0}\n /* eslint-disable react/jsx-no-bind */\n // eslint-disable-next-line react/no-children-prop\n children={() => {\n return <g>{this._groupedVerticalBarGraph}</g>;\n }}\n />\n );\n }\n\n private _getGraphData = (\n xScale: StringAxis | NumericAxis,\n yScale: NumericAxis,\n containerHeight: number,\n containerWidth: number,\n xElement?: SVGElement | null,\n ) => {\n const xScale0 = this._createX0Scale(containerWidth);\n const xScale1 = this._createX1Scale(xScale0);\n const allGroupsBars: JSX.Element[] = [];\n this._datasetForBars.forEach((singleSet: IGVSingleDataPoint) => {\n allGroupsBars.push(this._buildGraph(singleSet, xScale0, xScale1, containerHeight, xElement!));\n });\n this._groupedVerticalBarGraph = allGroupsBars;\n };\n\n private _getMargins = (margins: IMargins) => (this.margins = margins);\n\n private _createDataSetOfGVBC = (points: IGroupedVerticalBarChartData[]) => {\n const keys: string[] = [];\n const xAxisLabels: string[] = points.map(singlePoint => singlePoint.name);\n points[0].series.forEach((singleKey: IGVBarChartSeriesPoint) => {\n keys.push(singleKey.key);\n });\n const datasetForBars = this._createDataset(points);\n return {\n keys,\n xAxisLabels,\n datasetForBars,\n };\n };\n\n private _getCustomizedCallout = () => {\n return this.props.onRenderCalloutPerDataPoint\n ? this.props.onRenderCalloutPerDataPoint(this.state.dataPointCalloutProps)\n : null;\n };\n\n private _getOpacity = (legendTitle: string): string => {\n const opacity = this._legendHighlighted(legendTitle) || this._noLegendHighlighted() ? '' : '0.1';\n return opacity;\n };\n\n private _onBarHover = (\n pointData: IGVBarChartSeriesPoint,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n groupData: any,\n mouseEvent: React.MouseEvent<SVGElement>,\n ): void => {\n mouseEvent.persist();\n if (this._calloutAnchorPoint !== pointData) {\n this._calloutAnchorPoint = pointData;\n this.setState({\n refSelected: mouseEvent,\n /** Show the callout if highlighted bar is hovered and Hide it if unhighlighted bar is hovered */\n isCalloutVisible: this.state.selectedLegend === '' || this.state.selectedLegend === pointData.legend,\n calloutLegend: pointData.legend,\n dataForHoverCard: pointData.data,\n color: pointData.color,\n xCalloutValue: pointData.xAxisCalloutData,\n yCalloutValue: pointData.yAxisCalloutData,\n dataPointCalloutProps: pointData,\n callOutAccessibilityData: this.props.isCalloutForStack\n ? groupData.stackCallOutAccessibilityData\n : pointData.callOutAccessibilityData,\n YValueHover: groupData.groupSeries,\n hoverXValue: pointData.xAxisCalloutData,\n });\n }\n };\n\n private _onBarLeave = (): void => {\n /**/\n };\n\n private _handleChartMouseLeave = (): void => {\n this._calloutAnchorPoint = null;\n this.setState({ isCalloutVisible: false });\n };\n\n private _onBarFocus = (\n pointData: IGVBarChartSeriesPoint,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n groupData: any,\n refArrayIndexNumber: number,\n ): void => {\n this._refArray.forEach((obj: IRefArrayData, index: number) => {\n if (obj.index === pointData.legend && refArrayIndexNumber === index) {\n this.setState({\n refSelected: obj.refElement,\n /** Show the callout if highlighted bar is focused and Hide it if unhighlighted bar is focused */\n isCalloutVisible: this.state.selectedLegend === '' || this.state.selectedLegend === pointData.legend,\n calloutLegend: pointData.legend,\n dataForHoverCard: pointData.data,\n color: pointData.color,\n xCalloutValue: pointData.xAxisCalloutData,\n yCalloutValue: pointData.yAxisCalloutData,\n dataPointCalloutProps: pointData,\n callOutAccessibilityData: this.props.isCalloutForStack\n ? groupData.stackCallOutAccessibilityData\n : pointData.callOutAccessibilityData,\n YValueHover: groupData.groupSeries,\n hoverXValue: pointData.xAxisCalloutData,\n });\n }\n });\n };\n\n private _redirectToUrl = (href: string | undefined): void => {\n href ? (window.location.href = href) : '';\n };\n\n private _refCallback(element: SVGRectElement, legendTitle: string, refIndexNumber: number): void {\n this._refArray[refIndexNumber] = { index: legendTitle, refElement: element };\n }\n\n private _buildGraph = (\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n singleSet: any,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n xScale0: any,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n xScale1: any,\n containerHeight: number,\n xElement: SVGElement,\n ): JSX.Element => {\n const singleGroup: JSX.Element[] = [];\n const barLabelsForGroup: JSX.Element[] = [];\n\n const yBarScale = d3ScaleLinear()\n .domain([0, this._yMax])\n .range([0, containerHeight! - this.margins.bottom! - this.margins.top!]);\n\n const tempDataSet = Object.keys(this._datasetForBars[0]).splice(0, this._keys.length);\n tempDataSet.forEach((datasetKey: string, index: number) => {\n const refIndexNumber = singleSet.indexNum * tempDataSet.length + index;\n const pointData = singleSet[datasetKey];\n const xPoint = xScale1(datasetKey)!;\n const yPoint = Math.max(containerHeight! - this.margins.bottom! - yBarScale(pointData.data), 0);\n // Not rendering data with 0.\n pointData.data &&\n singleGroup.push(\n <rect\n className={this._classNames.opacityChangeOnHover}\n key={`${singleSet.indexNum}-${index}`}\n height={Math.max(yBarScale(pointData.data), 0)}\n width={this._barWidth}\n x={xPoint}\n y={yPoint}\n data-is-focusable={!this.props.hideTooltip}\n opacity={this._getOpacity(pointData.legend)}\n ref={(e: SVGRectElement | null) => {\n this._refCallback(e!, pointData.legend, refIndexNumber);\n }}\n fill={pointData.color}\n onMouseOver={this._onBarHover.bind(this, pointData, singleSet)}\n onMouseMove={this._onBarHover.bind(this, pointData, singleSet)}\n onMouseOut={this._onBarLeave}\n onFocus={this._onBarFocus.bind(this, pointData, singleSet, refIndexNumber)}\n onBlur={this._onBarLeave}\n onClick={this.props.href ? this._redirectToUrl.bind(this, this.props.href!) : pointData.onClick}\n aria-label={this._getAriaLabel(pointData, singleSet.xAxisPoint)}\n role=\"img\"\n />,\n );\n if (pointData.data && !this.props.hideLabels && this._barWidth >= 16) {\n barLabelsForGroup.push(\n <text\n x={xPoint + this._barWidth / 2}\n y={yPoint - 6}\n textAnchor=\"middle\"\n className={this._classNames.barLabel}\n aria-hidden={true}\n >\n {d3FormatPrefix(pointData.data < 1000 ? '.2~' : '.1', pointData.data)(pointData.data)}\n </text>,\n );\n }\n });\n // Used to display tooltip at x axis labels.\n if (!this.props.wrapXAxisLables && this.props.showXAxisLablesTooltip) {\n const xAxisElement = d3Select(xElement).call(xScale0);\n try {\n document.getElementById(this._tooltipId) && document.getElementById(this._tooltipId)!.remove();\n // eslint-disable-next-line no-empty\n } catch (e) {}\n const tooltipProps = {\n tooltipCls: this._classNames.tooltip!,\n id: this._tooltipId,\n xAxis: xAxisElement,\n };\n xAxisElement && tooltipOfXAxislabels(tooltipProps);\n }\n return (\n <g key={singleSet.indexNum} transform={`translate(${xScale0(singleSet.xAxisPoint)}, 0)`}>\n {singleGroup}\n {barLabelsForGroup}\n </g>\n );\n };\n\n private _createDataset = (points: IGroupedVerticalBarChartData[]) => {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const datasetForBars: any = [];\n const dataset: IGVDataPoint[] = [];\n\n points.forEach((point: IGroupedVerticalBarChartData, index: number) => {\n const singleDatasetPoint: IGVDataPoint = {};\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const singleDatasetPointForBars: any = {};\n const singleDataSeries: IGVBarChartSeriesPoint[] = [];\n\n point.series.forEach((seriesPoint: IGVBarChartSeriesPoint) => {\n singleDatasetPoint[seriesPoint.key] = seriesPoint.data;\n singleDatasetPointForBars[seriesPoint.key] = {\n ...seriesPoint,\n };\n singleDataSeries.push(seriesPoint);\n });\n\n singleDatasetPointForBars.xAxisPoint = point.name;\n singleDatasetPointForBars.indexNum = index;\n singleDatasetPointForBars.groupSeries = singleDataSeries;\n singleDatasetPointForBars.stackCallOutAccessibilityData = point.stackCallOutAccessibilityData;\n datasetForBars.push(singleDatasetPointForBars);\n dataset.push(singleDatasetPoint);\n });\n this._dataset = dataset;\n return datasetForBars;\n };\n\n // For grouped vertical bar chart, First need to define total scale (from start to end)\n // From that need to define scale for single group of bars - done by createX1Scale\n private _createX0Scale = (containerWidth: number) => {\n const x0Axis = d3ScaleBand()\n .domain(this._xAxisLabels)\n .range(\n this._isRtl\n ? [containerWidth! - this.margins.right! - this._domainMargin, this.margins.left! + this._domainMargin]\n : [this.margins.left! + this._domainMargin, containerWidth! - this.margins.right! - this._domainMargin],\n )\n // x0_inner_padding = space_between_groups / (space_between_groups + group_width)\n // space_between_groups = 2 * bar_width\n // group_width = this._keys.length * bar_width + (this._keys.length - 1) * space_between_bars\n .paddingInner(2 / (2 + this._keys.length + (this._keys.length - 1) * BAR_GAP_RATE));\n return x0Axis;\n };\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n private _createX1Scale = (xScale0: any): any => {\n const bandWidth = xScale0.bandwidth();\n\n return d3ScaleBand()\n .domain(this._keys)\n .range(this._isRtl ? [bandWidth, 0] : [0, bandWidth])\n .paddingInner(X1_INNER_PADDING);\n };\n\n private _closeCallout = () => {\n this.setState({\n isCalloutVisible: false,\n });\n };\n\n private _onLegendClick(legendTitle: string): void {\n if (this.state.selectedLegend === legendTitle) {\n this.setState({\n selectedLegend: '',\n });\n } else {\n this.setState({\n selectedLegend: legendTitle,\n });\n }\n }\n\n private _onLegendHover(legendTitle: string): void {\n this.setState({\n activeLegend: legendTitle,\n });\n }\n\n private _onLegendLeave(): void {\n this.setState({\n activeLegend: '',\n });\n }\n\n private _getLegendData = (points: IGroupedVerticalBarChartData[], palette: IPalette): JSX.Element => {\n const data = points;\n const defaultPalette: string[] = [palette.blueLight, palette.blue, palette.blueMid, palette.red, palette.black];\n const actions: ILegend[] = [];\n\n data.forEach((singleChartData: IGroupedVerticalBarChartData) => {\n singleChartData.series.forEach((point: IGVBarChartSeriesPoint) => {\n const color: string = point.color ? point.color : defaultPalette[Math.floor(Math.random() * 4 + 1)];\n const checkSimilarLegends = actions.filter((leg: ILegend) => leg.title === point.legend && leg.color === color);\n if (checkSimilarLegends!.length > 0) {\n return;\n }\n const legend: ILegend = {\n title: point.legend,\n color: color,\n action: () => {\n this._onLegendClick(point.legend);\n },\n hoverAction: () => {\n this._handleChartMouseLeave();\n this._onLegendHover(point.legend);\n },\n onMouseOutAction: () => {\n this._onLegendLeave();\n },\n };\n\n actions.push(legend);\n });\n });\n return (\n <Legends\n legends={actions}\n overflowProps={this.props.legendsOverflowProps}\n enabledWrapLines={this.props.enabledLegendsWrapLines}\n focusZonePropsInHoverCard={this.props.focusZonePropsForLegendsInHoverCard}\n {...this.props.legendProps}\n />\n );\n };\n\n private _getAxisData = (yAxisData: IAxisData) => {\n if (yAxisData && yAxisData.yAxisDomainValues.length) {\n const { yAxisDomainValues: domainValue } = yAxisData;\n this._yMax = Math.max(domainValue[domainValue.length - 1], this.props.yMaxValue || 0);\n }\n };\n\n /**\n * This function checks if the given legend is highlighted or not.\n * A legend can be highlighted in 2 ways:\n * 1. selection: if the user clicks on it\n * 2. hovering: if there is no selected legend and the user hovers over it\n */\n private _legendHighlighted = (legendTitle: string) => {\n return (\n this.state.selectedLegend === legendTitle ||\n (this.state.selectedLegend === '' && this.state.activeLegend === legendTitle)\n );\n };\n\n /**\n * This function checks if none of the legends is selected or hovered.\n */\n private _noLegendHighlighted = () => {\n return this.state.selectedLegend === '' && this.state.activeLegend === '';\n };\n\n private _getAriaLabel = (point: IGVBarChartSeriesPoint, xAxisPoint: string): string => {\n const xValue = point.xAxisCalloutData || xAxisPoint;\n const legend = point.legend;\n const yValue = point.yAxisCalloutData || point.data;\n return point.callOutAccessibilityData?.ariaLabel || `${xValue}. ${legend}, ${yValue}.`;\n };\n\n private _getDomainMargins = (containerWidth: number): IMargins => {\n /** Total width available to render the bars */\n const totalWidth =\n containerWidth - (this.margins.left! + MIN_DOMAIN_MARGIN) - (this.margins.right! + MIN_DOMAIN_MARGIN);\n let barWidth = Math.min(this.props.barwidth || 16, 24);\n let groupWidth = this._keys.length * barWidth + (this._keys.length - 1) * BAR_GAP_RATE * barWidth; // (i)\n /** Total width required to render the bars. Directly proportional to bar width */\n const reqWidth = this._xAxisLabels.length * groupWidth + (this._xAxisLabels.length - 1) * 2 * barWidth; // (ii)\n\n this._domainMargin = MIN_DOMAIN_MARGIN;\n if (totalWidth >= reqWidth) {\n // Center align the chart by setting equal left and right margins for domain\n this._domainMargin += (totalWidth - reqWidth) / 2;\n } else {\n // From (i) and (ii)\n /** Maximum possible group width to maintain 2:1 spacing */\n const maxBandwidth =\n totalWidth /\n (this._xAxisLabels.length +\n (this._xAxisLabels.length - 1) * (2 / (this._keys.length + (this._keys.length - 1) * BAR_GAP_RATE)));\n groupWidth = maxBandwidth;\n // From (i)\n barWidth = groupWidth / (this._keys.length + (this._keys.length - 1) * BAR_GAP_RATE);\n }\n this._barWidth = barWidth;\n\n return {\n ...this.margins,\n left: this.margins.left! + this._domainMargin,\n right: this.margins.right! + this._domainMargin,\n };\n };\n}\n"]}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { styled } from '../../Utilities';
|
|
2
|
+
import { GroupedVerticalBarChartBase } from './GroupedVerticalBarChart.base';
|
|
3
|
+
import { getStyles } from './GroupedVerticalBarChart.styles';
|
|
4
|
+
// Create a GroupedVerticalBarChart variant which uses these default styles and this styled subcomponent.
|
|
5
|
+
export var GroupedVerticalBarChart = styled(GroupedVerticalBarChartBase, getStyles);
|
|
6
|
+
//# sourceMappingURL=GroupedVerticalBarChart.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GroupedVerticalBarChart.js","sourceRoot":"../src/","sources":["components/GroupedVerticalBarChart/GroupedVerticalBarChart.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAMzC,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAC7E,OAAO,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAE7D,yGAAyG;AACzG,MAAM,CAAC,IAAM,uBAAuB,GAA2D,MAAM,CAInG,2BAA2B,EAAE,SAAS,CAAC,CAAC","sourcesContent":["import * as React from 'react';\nimport { styled } from '../../Utilities';\nimport {\n IGroupedVerticalBarChartProps,\n IGroupedVerticalBarChartStyleProps,\n IGroupedVerticalBarChartStyles,\n} from '../../index';\nimport { GroupedVerticalBarChartBase } from './GroupedVerticalBarChart.base';\nimport { getStyles } from './GroupedVerticalBarChart.styles';\n\n// Create a GroupedVerticalBarChart variant which uses these default styles and this styled subcomponent.\nexport const GroupedVerticalBarChart: React.FunctionComponent<IGroupedVerticalBarChartProps> = styled<\n IGroupedVerticalBarChartProps,\n IGroupedVerticalBarChartStyleProps,\n IGroupedVerticalBarChartStyles\n>(GroupedVerticalBarChartBase, getStyles);\n"]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { __assign } from "tslib";
|
|
2
|
+
import { FontSizes, FontWeights } from '@fluentui/react/lib/Styling';
|
|
3
|
+
export var getStyles = function (props) {
|
|
4
|
+
var theme = props.theme, href = props.href;
|
|
5
|
+
return {
|
|
6
|
+
opacityChangeOnHover: {
|
|
7
|
+
cursor: href ? 'pointer' : 'default',
|
|
8
|
+
},
|
|
9
|
+
tooltip: __assign(__assign({}, theme.fonts.medium), { display: 'flex', flexDirection: 'column', padding: '8px', position: 'absolute', textAlign: 'center', top: '0px', background: theme.semanticColors.bodyBackground, borderRadius: '2px', pointerEvents: 'none' }),
|
|
10
|
+
barLabel: {
|
|
11
|
+
fontSize: FontSizes.small,
|
|
12
|
+
fontWeight: FontWeights.semibold,
|
|
13
|
+
fill: theme.palette.neutralPrimary,
|
|
14
|
+
},
|
|
15
|
+
};
|
|
16
|
+
};
|
|
17
|
+
//# sourceMappingURL=GroupedVerticalBarChart.styles.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GroupedVerticalBarChart.styles.js","sourceRoot":"../src/","sources":["components/GroupedVerticalBarChart/GroupedVerticalBarChart.styles.ts"],"names":[],"mappings":";AAAA,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAC;AAGrE,MAAM,CAAC,IAAM,SAAS,GAAG,UAAC,KAAyC;IACzD,IAAA,KAAK,GAAW,KAAK,MAAhB,EAAE,IAAI,GAAK,KAAK,KAAV,CAAW;IAC9B,OAAO;QACL,oBAAoB,EAAE;YACpB,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;SACrC;QAED,OAAO,wBACF,KAAK,CAAC,KAAK,CAAC,MAAM,KACrB,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,QAAQ,EACvB,OAAO,EAAE,KAAK,EACd,QAAQ,EAAE,UAAU,EACpB,SAAS,EAAE,QAAQ,EACnB,GAAG,EAAE,KAAK,EACV,UAAU,EAAE,KAAK,CAAC,cAAc,CAAC,cAAc,EAC/C,YAAY,EAAE,KAAK,EACnB,aAAa,EAAE,MAAM,GACtB;QAED,QAAQ,EAAE;YACR,QAAQ,EAAE,SAAS,CAAC,KAAK;YACzB,UAAU,EAAE,WAAW,CAAC,QAAQ;YAChC,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC,cAAc;SACnC;KACF,CAAC;AACJ,CAAC,CAAC","sourcesContent":["import { FontSizes, FontWeights } from '@fluentui/react/lib/Styling';\nimport { IGroupedVerticalBarChartStyleProps, IGroupedVerticalBarChartStyles } from '../../index';\n\nexport const getStyles = (props: IGroupedVerticalBarChartStyleProps): IGroupedVerticalBarChartStyles => {\n const { theme, href } = props;\n return {\n opacityChangeOnHover: {\n cursor: href ? 'pointer' : 'default',\n },\n\n tooltip: {\n ...theme.fonts.medium,\n display: 'flex',\n flexDirection: 'column',\n padding: '8px',\n position: 'absolute',\n textAlign: 'center',\n top: '0px',\n background: theme.semanticColors.bodyBackground,\n borderRadius: '2px',\n pointerEvents: 'none',\n },\n\n barLabel: {\n fontSize: FontSizes.small,\n fontWeight: FontWeights.semibold,\n fill: theme.palette.neutralPrimary,\n },\n };\n};\n"]}
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import { IStyle } from '@fluentui/react/lib/Styling';
|
|
2
|
+
import { IRenderFunction, IStyleFunctionOrObject } from '@fluentui/react/lib/Utilities';
|
|
3
|
+
import { ICartesianChartStyles, ICartesianChartStyleProps, ICartesianChartProps, IGroupedVerticalBarChartData, IGVBarChartSeriesPoint } from '../../index';
|
|
4
|
+
export interface IGroupedVerticalBarChartProps extends ICartesianChartProps {
|
|
5
|
+
/**
|
|
6
|
+
* chart title for the chart
|
|
7
|
+
*/
|
|
8
|
+
chartTitle?: string;
|
|
9
|
+
/**
|
|
10
|
+
* Data to render in the chart.
|
|
11
|
+
*/
|
|
12
|
+
data: IGroupedVerticalBarChartData[];
|
|
13
|
+
/**
|
|
14
|
+
* Barwidth automacally adjusted based upon given parent width, data and scale.
|
|
15
|
+
* If barwidth given through prop, then is shold be less than given formula.
|
|
16
|
+
* If not, graph will adjust and your value may not be reflected.
|
|
17
|
+
* Formula: width of parent div / (Number Of Groups * (Number Of single bars in group + 2))
|
|
18
|
+
* Note: By changing barwidth manually it may cause some spatial and graph override issues,
|
|
19
|
+
* better to avoid using this prop.
|
|
20
|
+
*/
|
|
21
|
+
barwidth?: number;
|
|
22
|
+
/**
|
|
23
|
+
* Call to provide customized styling that will layer on top of the variant rules.
|
|
24
|
+
*/
|
|
25
|
+
styles?: IStyleFunctionOrObject<IGroupedVerticalBarChartStyleProps, IGroupedVerticalBarChartStyles>;
|
|
26
|
+
/**
|
|
27
|
+
* color of the datapoint legend
|
|
28
|
+
* @deprecated
|
|
29
|
+
*/
|
|
30
|
+
legendColor?: string;
|
|
31
|
+
/**
|
|
32
|
+
* This prop used to draw X axis grid line on tha chart. Default value will be false
|
|
33
|
+
* @deprecated
|
|
34
|
+
*/
|
|
35
|
+
showXAxisGridLines?: boolean;
|
|
36
|
+
/**
|
|
37
|
+
* This prop used to draw Y axis grid lines on the chart. Default value will be true
|
|
38
|
+
* @deprecated
|
|
39
|
+
*/
|
|
40
|
+
showYAxisGridLines?: boolean;
|
|
41
|
+
/**
|
|
42
|
+
* This prop takes the boolean value and used for to display x-axis path or transparent.
|
|
43
|
+
* This is a optional prop and default value is false. It dont show X-Axis path as tranparent.
|
|
44
|
+
* @deprecated
|
|
45
|
+
*/
|
|
46
|
+
showXAxisPath?: boolean;
|
|
47
|
+
/**
|
|
48
|
+
* This prop takes the boolean value and used for to display y-axis path or transparent.
|
|
49
|
+
* This is a optional prop and default value is false. It dont show X-Axis path as tranparent.
|
|
50
|
+
* @deprecated
|
|
51
|
+
*/
|
|
52
|
+
showYAxisPath?: boolean;
|
|
53
|
+
/**
|
|
54
|
+
* Define a custom callout renderer for a stack
|
|
55
|
+
*/
|
|
56
|
+
onRenderCalloutPerDataPoint?: IRenderFunction<IGVBarChartSeriesPoint>;
|
|
57
|
+
/**
|
|
58
|
+
* The prop used to define the culture to localized the numbers
|
|
59
|
+
*/
|
|
60
|
+
culture?: string;
|
|
61
|
+
/**
|
|
62
|
+
* To display multi stack callout or single callout
|
|
63
|
+
* @default false
|
|
64
|
+
*/
|
|
65
|
+
isCalloutForStack?: boolean;
|
|
66
|
+
/**
|
|
67
|
+
* Prop to hide the bar labels
|
|
68
|
+
* @default false
|
|
69
|
+
*/
|
|
70
|
+
hideLabels?: boolean;
|
|
71
|
+
}
|
|
72
|
+
export interface IGroupedVerticalBarChartStyleProps extends ICartesianChartStyleProps {
|
|
73
|
+
}
|
|
74
|
+
export interface IGroupedVerticalBarChartStyles extends ICartesianChartStyles {
|
|
75
|
+
/**
|
|
76
|
+
* Style to change the opacity of bars in dataviz when we hover on a single bar or legends
|
|
77
|
+
*/
|
|
78
|
+
opacityChangeOnHover: IStyle;
|
|
79
|
+
/**
|
|
80
|
+
* Style for the bar labels
|
|
81
|
+
*/
|
|
82
|
+
barLabel: IStyle;
|
|
83
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"GroupedVerticalBarChart.types.js","sourceRoot":"../src/","sources":["components/GroupedVerticalBarChart/GroupedVerticalBarChart.types.tsx"],"names":[],"mappings":"","sourcesContent":["import { IStyle } from '@fluentui/react/lib/Styling';\nimport { IRenderFunction, IStyleFunctionOrObject } from '@fluentui/react/lib/Utilities';\nimport {\n ICartesianChartStyles,\n ICartesianChartStyleProps,\n ICartesianChartProps,\n IGroupedVerticalBarChartData,\n IGVBarChartSeriesPoint,\n} from '../../index';\n\nexport interface IGroupedVerticalBarChartProps extends ICartesianChartProps {\n /**\n * chart title for the chart\n */\n chartTitle?: string;\n /**\n * Data to render in the chart.\n */\n data: IGroupedVerticalBarChartData[];\n\n /**\n * Barwidth automacally adjusted based upon given parent width, data and scale.\n * If barwidth given through prop, then is shold be less than given formula.\n * If not, graph will adjust and your value may not be reflected.\n * Formula: width of parent div / (Number Of Groups * (Number Of single bars in group + 2))\n * Note: By changing barwidth manually it may cause some spatial and graph override issues,\n * better to avoid using this prop.\n */\n barwidth?: number;\n\n /**\n * Call to provide customized styling that will layer on top of the variant rules.\n */\n styles?: IStyleFunctionOrObject<IGroupedVerticalBarChartStyleProps, IGroupedVerticalBarChartStyles>;\n\n /**\n * color of the datapoint legend\n * @deprecated\n */\n legendColor?: string;\n\n /**\n * This prop used to draw X axis grid line on tha chart. Default value will be false\n * @deprecated\n */\n showXAxisGridLines?: boolean;\n\n /**\n * This prop used to draw Y axis grid lines on the chart. Default value will be true\n * @deprecated\n */\n showYAxisGridLines?: boolean;\n\n /**\n * This prop takes the boolean value and used for to display x-axis path or transparent.\n * This is a optional prop and default value is false. It dont show X-Axis path as tranparent.\n * @deprecated\n */\n showXAxisPath?: boolean;\n\n /**\n * This prop takes the boolean value and used for to display y-axis path or transparent.\n * This is a optional prop and default value is false. It dont show X-Axis path as tranparent.\n * @deprecated\n */\n showYAxisPath?: boolean;\n\n /**\n * Define a custom callout renderer for a stack\n */\n onRenderCalloutPerDataPoint?: IRenderFunction<IGVBarChartSeriesPoint>;\n\n /**\n * The prop used to define the culture to localized the numbers\n */\n culture?: string;\n\n /**\n * To display multi stack callout or single callout\n * @default false\n */\n isCalloutForStack?: boolean;\n\n /**\n * Prop to hide the bar labels\n * @default false\n */\n hideLabels?: boolean;\n}\n\nexport interface IGroupedVerticalBarChartStyleProps extends ICartesianChartStyleProps {}\n\nexport interface IGroupedVerticalBarChartStyles extends ICartesianChartStyles {\n /**\n * Style to change the opacity of bars in dataviz when we hover on a single bar or legends\n */\n opacityChangeOnHover: IStyle;\n\n /**\n * Style for the bar labels\n */\n barLabel: IStyle;\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"../src/","sources":["components/GroupedVerticalBarChart/index.ts"],"names":[],"mappings":"AAAA,cAAc,2BAA2B,CAAC;AAC1C,cAAc,iCAAiC,CAAC","sourcesContent":["export * from './GroupedVerticalBarChart';\nexport * from './GroupedVerticalBarChart.types';\n"]}
|