@fluentui/react-charting 5.25.10 → 5.25.12

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.
Files changed (111) hide show
  1. package/CHANGELOG.json +95 -1
  2. package/CHANGELOG.md +28 -2
  3. package/dist/react-charting.d.ts +2 -0
  4. package/dist/react-charting.js +1 -1
  5. package/dist/react-charting.min.js +1 -1
  6. package/lib/components/AreaChart/AreaChart.base.js +3 -3
  7. package/lib/components/AreaChart/AreaChart.base.js.map +1 -1
  8. package/lib/components/DeclarativeChart/DeclarativeChart.js +1 -1
  9. package/lib/components/DeclarativeChart/DeclarativeChart.js.map +1 -1
  10. package/lib/components/DeclarativeChart/PlotlySchemaAdapter.d.ts +5 -1
  11. package/lib/components/DeclarativeChart/PlotlySchemaAdapter.js +8 -8
  12. package/lib/components/DeclarativeChart/PlotlySchemaAdapter.js.map +1 -1
  13. package/lib/components/FunnelChart/FunnelChart.base.js +1 -1
  14. package/lib/components/FunnelChart/FunnelChart.base.js.map +1 -1
  15. package/lib/components/GanttChart/GanttChart.base.js +4 -4
  16. package/lib/components/GanttChart/GanttChart.base.js.map +1 -1
  17. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js +7 -7
  18. package/lib/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js.map +1 -1
  19. package/lib/components/HeatMapChart/HeatMapChart.base.js +5 -5
  20. package/lib/components/HeatMapChart/HeatMapChart.base.js.map +1 -1
  21. package/lib/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.base.js +3 -3
  22. package/lib/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.base.js.map +1 -1
  23. package/lib/components/LineChart/LineChart.base.js +1 -1
  24. package/lib/components/LineChart/LineChart.base.js.map +1 -1
  25. package/lib/components/PolarChart/PolarChart.base.js +3 -3
  26. package/lib/components/PolarChart/PolarChart.base.js.map +1 -1
  27. package/lib/components/PolarChart/PolarChart.utils.js +1 -1
  28. package/lib/components/PolarChart/PolarChart.utils.js.map +1 -1
  29. package/lib/components/SankeyChart/SankeyChart.base.js +7 -7
  30. package/lib/components/SankeyChart/SankeyChart.base.js.map +1 -1
  31. package/lib/components/ScatterChart/ScatterChart.base.js +2 -2
  32. package/lib/components/ScatterChart/ScatterChart.base.js.map +1 -1
  33. package/lib/components/VerticalBarChart/VerticalBarChart.base.js +3 -3
  34. package/lib/components/VerticalBarChart/VerticalBarChart.base.js.map +1 -1
  35. package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.base.js +2 -2
  36. package/lib/components/VerticalStackedBarChart/VerticalStackedBarChart.base.js.map +1 -1
  37. package/lib/types/IDataPoint.d.ts +2 -0
  38. package/lib/types/IDataPoint.js.map +1 -1
  39. package/lib/utilities/utilities.js +2 -2
  40. package/lib/utilities/utilities.js.map +1 -1
  41. package/lib-amd/components/AreaChart/AreaChart.base.js +3 -3
  42. package/lib-amd/components/AreaChart/AreaChart.base.js.map +1 -1
  43. package/lib-amd/components/DeclarativeChart/DeclarativeChart.js +1 -1
  44. package/lib-amd/components/DeclarativeChart/DeclarativeChart.js.map +1 -1
  45. package/lib-amd/components/DeclarativeChart/PlotlySchemaAdapter.d.ts +5 -1
  46. package/lib-amd/components/DeclarativeChart/PlotlySchemaAdapter.js +14 -13
  47. package/lib-amd/components/DeclarativeChart/PlotlySchemaAdapter.js.map +1 -1
  48. package/lib-amd/components/FunnelChart/FunnelChart.base.js +1 -1
  49. package/lib-amd/components/FunnelChart/FunnelChart.base.js.map +1 -1
  50. package/lib-amd/components/GanttChart/GanttChart.base.js +4 -4
  51. package/lib-amd/components/GanttChart/GanttChart.base.js.map +1 -1
  52. package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js +7 -7
  53. package/lib-amd/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js.map +1 -1
  54. package/lib-amd/components/HeatMapChart/HeatMapChart.base.js +5 -5
  55. package/lib-amd/components/HeatMapChart/HeatMapChart.base.js.map +1 -1
  56. package/lib-amd/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.base.js +3 -3
  57. package/lib-amd/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.base.js.map +1 -1
  58. package/lib-amd/components/LineChart/LineChart.base.js +1 -1
  59. package/lib-amd/components/LineChart/LineChart.base.js.map +1 -1
  60. package/lib-amd/components/PolarChart/PolarChart.base.js +3 -3
  61. package/lib-amd/components/PolarChart/PolarChart.base.js.map +1 -1
  62. package/lib-amd/components/PolarChart/PolarChart.utils.js +1 -1
  63. package/lib-amd/components/PolarChart/PolarChart.utils.js.map +1 -1
  64. package/lib-amd/components/SankeyChart/SankeyChart.base.js +7 -7
  65. package/lib-amd/components/SankeyChart/SankeyChart.base.js.map +1 -1
  66. package/lib-amd/components/ScatterChart/ScatterChart.base.js +2 -2
  67. package/lib-amd/components/ScatterChart/ScatterChart.base.js.map +1 -1
  68. package/lib-amd/components/VerticalBarChart/VerticalBarChart.base.js +3 -3
  69. package/lib-amd/components/VerticalBarChart/VerticalBarChart.base.js.map +1 -1
  70. package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.base.js +2 -2
  71. package/lib-amd/components/VerticalStackedBarChart/VerticalStackedBarChart.base.js.map +1 -1
  72. package/lib-amd/types/IDataPoint.d.ts +2 -0
  73. package/lib-amd/types/IDataPoint.js.map +1 -1
  74. package/lib-amd/utilities/utilities.js +2 -2
  75. package/lib-amd/utilities/utilities.js.map +1 -1
  76. package/lib-commonjs/components/AreaChart/AreaChart.base.js +3 -3
  77. package/lib-commonjs/components/AreaChart/AreaChart.base.js.map +1 -1
  78. package/lib-commonjs/components/DeclarativeChart/DeclarativeChart.js +1 -1
  79. package/lib-commonjs/components/DeclarativeChart/DeclarativeChart.js.map +1 -1
  80. package/lib-commonjs/components/DeclarativeChart/PlotlySchemaAdapter.d.ts +5 -1
  81. package/lib-commonjs/components/DeclarativeChart/PlotlySchemaAdapter.js +14 -13
  82. package/lib-commonjs/components/DeclarativeChart/PlotlySchemaAdapter.js.map +1 -1
  83. package/lib-commonjs/components/FunnelChart/FunnelChart.base.js +1 -1
  84. package/lib-commonjs/components/FunnelChart/FunnelChart.base.js.map +1 -1
  85. package/lib-commonjs/components/GanttChart/GanttChart.base.js +4 -4
  86. package/lib-commonjs/components/GanttChart/GanttChart.base.js.map +1 -1
  87. package/lib-commonjs/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js +7 -7
  88. package/lib-commonjs/components/GroupedVerticalBarChart/GroupedVerticalBarChart.base.js.map +1 -1
  89. package/lib-commonjs/components/HeatMapChart/HeatMapChart.base.js +5 -5
  90. package/lib-commonjs/components/HeatMapChart/HeatMapChart.base.js.map +1 -1
  91. package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.base.js +3 -3
  92. package/lib-commonjs/components/HorizontalBarChartWithAxis/HorizontalBarChartWithAxis.base.js.map +1 -1
  93. package/lib-commonjs/components/LineChart/LineChart.base.js +1 -1
  94. package/lib-commonjs/components/LineChart/LineChart.base.js.map +1 -1
  95. package/lib-commonjs/components/PolarChart/PolarChart.base.js +3 -3
  96. package/lib-commonjs/components/PolarChart/PolarChart.base.js.map +1 -1
  97. package/lib-commonjs/components/PolarChart/PolarChart.utils.js +1 -1
  98. package/lib-commonjs/components/PolarChart/PolarChart.utils.js.map +1 -1
  99. package/lib-commonjs/components/SankeyChart/SankeyChart.base.js +7 -7
  100. package/lib-commonjs/components/SankeyChart/SankeyChart.base.js.map +1 -1
  101. package/lib-commonjs/components/ScatterChart/ScatterChart.base.js +2 -2
  102. package/lib-commonjs/components/ScatterChart/ScatterChart.base.js.map +1 -1
  103. package/lib-commonjs/components/VerticalBarChart/VerticalBarChart.base.js +3 -3
  104. package/lib-commonjs/components/VerticalBarChart/VerticalBarChart.base.js.map +1 -1
  105. package/lib-commonjs/components/VerticalStackedBarChart/VerticalStackedBarChart.base.js +2 -2
  106. package/lib-commonjs/components/VerticalStackedBarChart/VerticalStackedBarChart.base.js.map +1 -1
  107. package/lib-commonjs/types/IDataPoint.d.ts +2 -0
  108. package/lib-commonjs/types/IDataPoint.js.map +1 -1
  109. package/lib-commonjs/utilities/utilities.js +2 -2
  110. package/lib-commonjs/utilities/utilities.js.map +1 -1
  111. package/package.json +17 -17
@@ -1 +1 @@
1
- {"version":3,"file":"DeclarativeChart.js","sourceRoot":"../src/","sources":["components/DeclarativeChart/DeclarativeChart.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\nimport * as React from 'react';\nimport { useTheme } from '@fluentui/react';\nimport { getRTL, IRefObject } from '@fluentui/react/lib/Utilities';\nimport { AnnotationOnlyChart } from '../AnnotationOnlyChart/AnnotationOnlyChart';\nimport { DonutChart } from '../DonutChart/index';\nimport { VerticalStackedBarChart } from '../VerticalStackedBarChart/index';\nimport { decodeBase64Fields } from '@fluentui/chart-utilities';\nimport type { Data, PlotData, PlotlySchema, OutputChartType, TraceInfo } from '@fluentui/chart-utilities';\nimport { isArrayOrTypedArray, isMonthArray, mapFluentChart, sanitizeJson } from '@fluentui/chart-utilities';\n\nimport type { GridProperties } from './PlotlySchemaAdapter';\nimport {\n correctYearMonth,\n getGridProperties,\n isNonPlotType,\n transformPlotlyJsonToDonutProps,\n transformPlotlyJsonToVSBCProps,\n transformPlotlyJsonToAreaChartProps,\n transformPlotlyJsonToLineChartProps,\n transformPlotlyJsonToHorizontalBarWithAxisProps,\n transformPlotlyJsonToHeatmapProps,\n transformPlotlyJsonToSankeyProps,\n transformPlotlyJsonToGaugeProps,\n transformPlotlyJsonToGVBCProps,\n transformPlotlyJsonToVBCProps,\n transformPlotlyJsonToChartTableProps,\n transformPlotlyJsonToScatterChartProps,\n getAllupLegendsProps,\n NON_PLOT_KEY_PREFIX,\n SINGLE_REPEAT,\n transformPlotlyJsonToFunnelChartProps,\n transformPlotlyJsonToGanttChartProps,\n transformPlotlyJsonToAnnotationChartProps,\n transformPlotlyJsonToPolarChartProps,\n DEFAULT_POLAR_SUBPLOT,\n} from './PlotlySchemaAdapter';\nimport type { ColorwayType } from './PlotlyColorAdapter';\nimport { LineChart } from '../LineChart/index';\nimport { HorizontalBarChartWithAxis } from '../HorizontalBarChartWithAxis/index';\nimport { AreaChart } from '../AreaChart/index';\nimport { HeatMapChart } from '../HeatMapChart/index';\nimport { SankeyChart } from '../SankeyChart/SankeyChart';\nimport { GaugeChart } from '../GaugeChart/index';\nimport { GroupedVerticalBarChart } from '../GroupedVerticalBarChart/index';\nimport { VerticalBarChart } from '../VerticalBarChart/index';\nimport { IChart, IImageExportOptions } from '../../types/index';\nimport { withResponsiveContainer } from '../ResponsiveContainer/withResponsiveContainer';\nimport { ScatterChart } from '../ScatterChart/index';\nimport { ChartTable } from '../ChartTable/index';\nimport { FunnelChart } from '../FunnelChart/FunnelChart';\nimport { GanttChart } from '../GanttChart/index';\nimport { ILegendContainer, ILegendsProps, Legends } from '../Legends/index';\nimport type { JSXElement } from '@fluentui/utilities';\nimport { exportChartsAsImage } from '../../utilities/image-export-utils';\nimport { resolveCSSVariables } from '../../utilities/utilities';\nimport { getChartTitleInlineStyles } from '../../utilities/Common.styles';\nimport { PolarChart } from '../PolarChart/index';\n\nconst ResponsiveDonutChart = withResponsiveContainer(DonutChart);\nconst ResponsiveVerticalStackedBarChart = withResponsiveContainer(VerticalStackedBarChart);\nconst ResponsiveLineChart = withResponsiveContainer(LineChart);\nconst ResponsiveHorizontalBarChartWithAxis = withResponsiveContainer(HorizontalBarChartWithAxis);\nconst ResponsiveAreaChart = withResponsiveContainer(AreaChart);\nconst ResponsiveHeatMapChart = withResponsiveContainer(HeatMapChart);\nconst ResponsiveSankeyChart = withResponsiveContainer(SankeyChart);\nconst ResponsiveGaugeChart = withResponsiveContainer(GaugeChart);\nconst ResponsiveGroupedVerticalBarChart = withResponsiveContainer(GroupedVerticalBarChart);\nconst ResponsiveVerticalBarChart = withResponsiveContainer(VerticalBarChart);\nconst ResponsiveScatterChart = withResponsiveContainer(ScatterChart);\nconst ResponsiveChartTable = withResponsiveContainer(ChartTable);\n// Removing responsive wrapper for FunnelChart as responsive container is not working with FunnelChart\n//const ResponsiveFunnelChart = withResponsiveContainer(FunnelChart);\nconst ResponsiveGanttChart = withResponsiveContainer(GanttChart);\nconst ResponsivePolarChart = withResponsiveContainer(PolarChart);\n\n// Default x-axis key for grouping traces. Also applicable for PieData and SankeyData where x-axis is not defined.\nconst DEFAULT_XAXIS = 'x';\n\n/**\n * DeclarativeChart schema.\n * {@docCategory DeclarativeChart}\n */\nexport interface Schema {\n /**\n * Plotly schema represented as JSON object\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n plotlySchema: any;\n}\n\n/**\n * DeclarativeChart props.\n * {@docCategory DeclarativeChart}\n */\nexport interface DeclarativeChartProps extends React.RefAttributes<HTMLDivElement> {\n /**\n * The schema representing the chart data, layout and configuration\n */\n chartSchema: Schema;\n\n /**\n * Callback when an event occurs\n */\n onSchemaChange?: (eventData: Schema) => void;\n\n /**\n * Optional callback to access the IDeclarativeChart interface. Use this instead of ref for accessing\n * the public methods and properties of the component.\n */\n componentRef?: IRefObject<IDeclarativeChart>;\n\n /**\n * Optional prop to specify the colorway type of the chart.\n * - 'default': Use Fluent UI color palette aligning with plotly colorway.\n * - 'builtin': Use Fluent UI colorway.\n * - 'others': Reserved for future colorways.\n * @default 'default'\n */\n colorwayType?: ColorwayType;\n}\n\n/**\n * {@docCategory DeclarativeChart}\n */\nexport interface IDeclarativeChart {\n exportAsImage: (opts?: IImageExportOptions) => Promise<string>;\n}\n\nconst useColorMapping = () => {\n const colorMap = React.useRef(new Map<string, string>());\n return colorMap;\n};\n\nfunction renderChart<TProps>(\n Renderer: React.ComponentType<TProps>,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n transformer: (...args: any[]) => TProps,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n transformerArgs: any[],\n commonProps: Partial<TProps>,\n cellRow: number,\n cellColumn: number,\n): JSXElement {\n const chartProps = transformer(...transformerArgs);\n return (\n <div\n key={`${cellRow}_${cellColumn}`}\n style={{\n gridRowStart: cellRow,\n gridRowEnd: cellRow + 1,\n gridColumnStart: cellColumn,\n gridColumnEnd: cellColumn + 1,\n }}\n >\n <Renderer {...chartProps} {...commonProps} />\n </div>\n );\n}\n\ntype PreTransformHooks = {\n preTransformCondition?: (plotlySchema: PlotlySchema) => boolean;\n preTransformOperation?: (plotlySchema: PlotlySchema) => PlotlySchema;\n};\n\nconst LineAreaPreTransformOp = (plotlyInput: PlotlySchema) => {\n const xValues = (plotlyInput.data[0] as PlotData).x;\n const isXMonth = isMonthArray(xValues);\n let renderData = plotlyInput.data;\n if (isXMonth) {\n renderData = plotlyInput.data.map((dataPoint: PlotData) => ({\n ...dataPoint,\n x: correctYearMonth(dataPoint.x),\n }));\n }\n return { data: renderData, layout: plotlyInput.layout };\n};\n\ntype ChartTypeMap = {\n annotation: {\n transformer: typeof transformPlotlyJsonToAnnotationChartProps;\n renderer: typeof AnnotationOnlyChart;\n } & PreTransformHooks;\n donut: {\n transformer: typeof transformPlotlyJsonToDonutProps;\n renderer: typeof ResponsiveDonutChart;\n } & PreTransformHooks;\n sankey: {\n transformer: typeof transformPlotlyJsonToSankeyProps;\n renderer: typeof ResponsiveSankeyChart;\n } & PreTransformHooks;\n table: {\n transformer: typeof transformPlotlyJsonToChartTableProps;\n renderer: typeof ResponsiveChartTable;\n } & PreTransformHooks;\n horizontalbar: {\n transformer: typeof transformPlotlyJsonToHorizontalBarWithAxisProps;\n renderer: typeof ResponsiveHorizontalBarChartWithAxis;\n } & PreTransformHooks;\n groupedverticalbar: {\n transformer: typeof transformPlotlyJsonToGVBCProps;\n renderer: typeof ResponsiveGroupedVerticalBarChart;\n } & PreTransformHooks;\n verticalstackedbar: {\n transformer: typeof transformPlotlyJsonToVSBCProps;\n renderer: typeof ResponsiveVerticalStackedBarChart;\n } & PreTransformHooks;\n heatmap: {\n transformer: typeof transformPlotlyJsonToHeatmapProps;\n renderer: typeof ResponsiveHeatMapChart;\n } & PreTransformHooks;\n gauge: {\n transformer: typeof transformPlotlyJsonToGaugeProps;\n renderer: typeof ResponsiveGaugeChart;\n } & PreTransformHooks;\n verticalbar: {\n transformer: typeof transformPlotlyJsonToVBCProps;\n renderer: typeof ResponsiveVerticalBarChart;\n } & PreTransformHooks;\n area: {\n transformer: typeof transformPlotlyJsonToAreaChartProps;\n renderer: typeof ResponsiveAreaChart;\n } & PreTransformHooks;\n line: {\n transformer: typeof transformPlotlyJsonToLineChartProps;\n renderer: typeof ResponsiveLineChart;\n } & PreTransformHooks;\n scatter: {\n transformer: typeof transformPlotlyJsonToScatterChartProps;\n renderer: typeof ResponsiveScatterChart;\n } & PreTransformHooks;\n funnel: {\n transformer: typeof transformPlotlyJsonToFunnelChartProps;\n renderer: typeof FunnelChart;\n } & PreTransformHooks;\n gantt: {\n transformer: typeof transformPlotlyJsonToGanttChartProps;\n renderer: typeof ResponsiveGanttChart;\n } & PreTransformHooks;\n scatterpolar: {\n transformer: typeof transformPlotlyJsonToPolarChartProps;\n renderer: typeof ResponsivePolarChart;\n } & PreTransformHooks;\n fallback: {\n transformer: typeof transformPlotlyJsonToVSBCProps;\n renderer: typeof ResponsiveVerticalStackedBarChart;\n } & PreTransformHooks;\n};\n\nconst chartMap: ChartTypeMap = {\n annotation: {\n transformer: transformPlotlyJsonToAnnotationChartProps,\n renderer: AnnotationOnlyChart,\n },\n // PieData category charts\n donut: {\n transformer: transformPlotlyJsonToDonutProps,\n renderer: ResponsiveDonutChart,\n },\n // SankeyData category charts\n sankey: {\n transformer: transformPlotlyJsonToSankeyProps,\n renderer: ResponsiveSankeyChart,\n },\n // TableData category charts\n table: {\n transformer: transformPlotlyJsonToChartTableProps,\n renderer: ResponsiveChartTable,\n },\n // PlotData category charts\n horizontalbar: {\n transformer: transformPlotlyJsonToHorizontalBarWithAxisProps,\n renderer: ResponsiveHorizontalBarChartWithAxis,\n },\n groupedverticalbar: {\n transformer: transformPlotlyJsonToGVBCProps,\n renderer: ResponsiveGroupedVerticalBarChart,\n },\n verticalstackedbar: {\n transformer: transformPlotlyJsonToVSBCProps,\n renderer: ResponsiveVerticalStackedBarChart,\n },\n heatmap: {\n transformer: transformPlotlyJsonToHeatmapProps,\n renderer: ResponsiveHeatMapChart,\n },\n gauge: {\n transformer: transformPlotlyJsonToGaugeProps,\n renderer: ResponsiveGaugeChart,\n },\n verticalbar: {\n transformer: transformPlotlyJsonToVBCProps,\n renderer: ResponsiveVerticalBarChart,\n },\n area: {\n transformer: transformPlotlyJsonToAreaChartProps,\n renderer: ResponsiveAreaChart,\n preTransformOperation: LineAreaPreTransformOp,\n },\n line: {\n transformer: transformPlotlyJsonToLineChartProps,\n renderer: ResponsiveLineChart,\n preTransformOperation: LineAreaPreTransformOp,\n },\n scatter: {\n transformer: transformPlotlyJsonToScatterChartProps,\n renderer: ResponsiveScatterChart,\n preTransformOperation: LineAreaPreTransformOp,\n },\n funnel: {\n transformer: transformPlotlyJsonToFunnelChartProps,\n renderer: FunnelChart,\n },\n gantt: {\n transformer: transformPlotlyJsonToGanttChartProps,\n renderer: ResponsiveGanttChart,\n },\n scatterpolar: {\n transformer: transformPlotlyJsonToPolarChartProps,\n renderer: ResponsivePolarChart,\n },\n fallback: {\n transformer: transformPlotlyJsonToVSBCProps,\n renderer: ResponsiveVerticalStackedBarChart,\n },\n};\n\n/**\n * DeclarativeChart component.\n * {@docCategory DeclarativeChart}\n */\nexport const DeclarativeChart: React.FunctionComponent<DeclarativeChartProps> = React.forwardRef<\n HTMLDivElement,\n DeclarativeChartProps\n>(({ colorwayType = 'default', onSchemaChange, ...props }, forwardedRef) => {\n const { plotlySchema } = sanitizeJson(props.chartSchema);\n const chart: OutputChartType = mapFluentChart(plotlySchema);\n if (!chart.isValid) {\n throw new Error(`Invalid chart schema: ${chart.errorMessage}`);\n }\n let plotlyInput = plotlySchema as PlotlySchema;\n try {\n plotlyInput = decodeBase64Fields(plotlyInput);\n } catch (error) {\n throw new Error(`Failed to decode plotly schema: ${error}`);\n }\n const plotlyInputWithValidData: PlotlySchema = {\n ...plotlyInput,\n data: chart.validTracesInfo!.map(trace => plotlyInput.data[trace.index]),\n };\n\n const validTracesFilteredIndex: TraceInfo[] = chart.validTracesInfo!.map((trace, index) => ({\n index,\n type: trace.type,\n }));\n\n let { selectedLegends } = plotlySchema;\n const colorMap = useColorMapping();\n const theme = useTheme();\n const isDarkTheme = theme?.isInverted ?? false;\n const chartRefs = React.useRef<{ compRef: IChart | null; row: number; col: number }[]>([]);\n const isMultiPlot = React.useRef(false);\n const legendsRef = React.useRef<ILegendContainer>(null);\n const containerRef = React.useRef<HTMLDivElement>(null);\n\n if (!isArrayOrTypedArray(selectedLegends)) {\n selectedLegends = [];\n }\n\n const [activeLegends, setActiveLegends] = React.useState<string[]>(selectedLegends);\n const onActiveLegendsChange = React.useCallback(\n (keys: string[]) => {\n setActiveLegends(keys);\n if (onSchemaChange) {\n onSchemaChange({ plotlySchema: { plotlyInput, selectedLegends: keys } });\n }\n },\n [onSchemaChange, plotlyInput],\n );\n\n React.useEffect(() => {\n // eslint-disable-next-line @typescript-eslint/no-shadow\n const { plotlySchema } = sanitizeJson(props.chartSchema);\n // eslint-disable-next-line @typescript-eslint/no-shadow\n const { selectedLegends } = plotlySchema;\n setActiveLegends(selectedLegends ?? []);\n }, [props.chartSchema]);\n\n const multiSelectLegendProps = {\n canSelectMultipleLegends: true,\n onChange: onActiveLegendsChange,\n selectedLegends: activeLegends,\n };\n\n const interactiveCommonProps = {\n legendProps: multiSelectLegendProps,\n calloutProps: { layerProps: { eventBubblingEnabled: true } },\n };\n\n function createLegends(legendProps: ILegendsProps): JSXElement {\n return (\n <Legends {...legendProps} selectedLegends={activeLegends} onChange={onActiveLegendsChange} ref={legendsRef} />\n );\n }\n\n const exportAsImage = React.useCallback(\n async (opts?: IImageExportOptions) => {\n if (!containerRef.current) {\n throw new Error('Container reference is null');\n }\n\n const imgExpOpts = {\n background: resolveCSSVariables(containerRef.current, theme.semanticColors.bodyBackground),\n scale: 5,\n ...opts,\n };\n\n if (!isMultiPlot.current) {\n if (!chartRefs.current[0]?.compRef?.toImage) {\n throw new Error('Chart cannot be exported as image');\n }\n\n return chartRefs.current[0].compRef.toImage(imgExpOpts);\n }\n\n return exportChartsAsImage(\n chartRefs.current.map(item => ({\n container: item.compRef?.chartContainer,\n row: item.row,\n col: item.col,\n })),\n legendsRef.current?.toSVG,\n getRTL(),\n imgExpOpts,\n );\n },\n [theme],\n );\n\n React.useImperativeHandle(\n props.componentRef,\n () => ({\n exportAsImage,\n }),\n [exportAsImage],\n );\n\n const groupedTraces: Record<string, number[]> = {};\n let nonCartesianTraceCount = 0;\n\n // For annotation-only charts, create a single group entry\n if (chart.type === 'annotation') {\n groupedTraces[DEFAULT_XAXIS] = [];\n } else {\n plotlyInputWithValidData.data.forEach((trace: Data, index: number) => {\n let traceKey = '';\n if (isNonPlotType(chart.validTracesInfo![index].type)) {\n traceKey = `${NON_PLOT_KEY_PREFIX}${nonCartesianTraceCount + 1}`;\n nonCartesianTraceCount++;\n } else {\n traceKey =\n chart.validTracesInfo![index].type === 'scatterpolar'\n ? (trace as { subplot?: string }).subplot ?? DEFAULT_POLAR_SUBPLOT\n : (trace as PlotData).xaxis ?? DEFAULT_XAXIS;\n }\n if (!groupedTraces[traceKey]) {\n groupedTraces[traceKey] = [];\n }\n groupedTraces[traceKey].push(index);\n });\n }\n\n isMultiPlot.current = Object.keys(groupedTraces).length > 1;\n const gridProperties: GridProperties = getGridProperties(\n plotlyInputWithValidData,\n isMultiPlot.current,\n chart.validTracesInfo!,\n );\n\n // Render only one plot if the grid properties cannot determine positioning of multiple plots.\n if (\n isMultiPlot.current &&\n gridProperties.templateRows === SINGLE_REPEAT &&\n gridProperties.templateColumns === SINGLE_REPEAT\n ) {\n if (chart.type === 'donut') {\n // If there are multiple data traces for donut/pie, picking the last one similar to plotly\n const keys = Object.keys(groupedTraces);\n keys.forEach((key, index) => {\n if (index < keys.length - 1) {\n delete groupedTraces[key];\n }\n });\n } else {\n Object.keys(groupedTraces).forEach((key, index) => {\n if (index > 0) {\n delete groupedTraces[key];\n }\n });\n }\n isMultiPlot.current = false;\n }\n\n const allupLegendsProps = getAllupLegendsProps(\n plotlyInputWithValidData,\n colorMap,\n colorwayType,\n chart.validTracesInfo!,\n isDarkTheme,\n );\n\n type ChartType = keyof ChartTypeMap;\n\n const titleObj = plotlyInputWithValidData.layout?.title;\n const chartTitle = typeof titleObj === 'string' ? titleObj : titleObj?.text ?? '';\n const titleFont = typeof titleObj === 'object' ? titleObj?.font : undefined;\n\n const { fontFamily, fontSize, fontWeight } = theme.fonts.medium;\n const titleStyle: React.CSSProperties = {\n fontFamily,\n fontSize,\n fontWeight,\n color: theme.semanticColors.bodyText,\n textAlign: 'center',\n marginBottom: '8px',\n ...getChartTitleInlineStyles(titleFont),\n };\n\n // map through the grouped traces and render the appropriate chart\n return (\n <>\n {isMultiPlot.current && chartTitle && <div style={titleStyle}>{chartTitle}</div>}\n <div\n style={{\n display: 'grid',\n gridTemplateRows: gridProperties.templateRows,\n gridTemplateColumns: gridProperties.templateColumns,\n }}\n ref={containerRef}\n >\n {Object.entries(groupedTraces).map(([xAxisKey, index], chartIdx) => {\n const plotlyInputForGroup: PlotlySchema = {\n ...plotlyInputWithValidData,\n data: index.map(idx => plotlyInputWithValidData.data[idx]),\n };\n\n const filteredTracesInfo = validTracesFilteredIndex.filter(trace => index.includes(trace.index));\n let chartType =\n chart.type === 'fallback' || chart.type === 'groupedverticalbar'\n ? chart.type\n : filteredTracesInfo[0]?.type ?? chart.type;\n\n if (\n validTracesFilteredIndex.some(trace => trace.type === 'line') &&\n validTracesFilteredIndex.some(trace => trace.type === 'scatter')\n ) {\n chartType = 'line';\n }\n\n const chartEntry = chartMap[chartType as ChartType];\n if (chartEntry) {\n const { transformer, renderer, preTransformCondition, preTransformOperation } = chartEntry;\n if (preTransformCondition === undefined || preTransformCondition(plotlyInputForGroup)) {\n const transformedInput = preTransformOperation\n ? preTransformOperation(plotlyInputForGroup)\n : plotlyInputForGroup;\n const cellProperties = gridProperties.layout[xAxisKey];\n\n const resolvedCommonProps = (\n chartType === 'annotation'\n ? {}\n : {\n ...interactiveCommonProps,\n }\n ) as Partial<ReturnType<typeof transformer>>;\n\n return renderChart<ReturnType<typeof transformer>>(\n renderer,\n transformer,\n [transformedInput, isMultiPlot.current, colorMap, colorwayType, isDarkTheme],\n {\n ...resolvedCommonProps,\n ...(cellProperties?.xAnnotation && { xAxisAnnotation: cellProperties.xAnnotation }),\n ...(cellProperties?.yAnnotation && { yAxisAnnotation: cellProperties.yAnnotation }),\n componentRef: (ref: IChart | null) => {\n chartRefs.current[chartIdx] = {\n compRef: ref,\n row: cellProperties?.row ?? 1,\n col: cellProperties?.column ?? 1,\n };\n },\n },\n cellProperties?.row ?? 1,\n cellProperties?.column ?? 1,\n );\n }\n return <></>;\n } else {\n throw new Error(`Unsupported chart type :${plotlyInputForGroup.data[0]?.type}`);\n }\n })}\n </div>\n {isMultiPlot.current && createLegends(allupLegendsProps)}\n </>\n );\n});\nDeclarativeChart.displayName = 'DeclarativeChart';\n"]}
1
+ {"version":3,"file":"DeclarativeChart.js","sourceRoot":"../src/","sources":["components/DeclarativeChart/DeclarativeChart.tsx"],"names":[],"mappings":"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","sourcesContent":["/* eslint-disable @typescript-eslint/naming-convention */\nimport * as React from 'react';\nimport { useTheme } from '@fluentui/react';\nimport { getRTL, IRefObject } from '@fluentui/react/lib/Utilities';\nimport { AnnotationOnlyChart } from '../AnnotationOnlyChart/AnnotationOnlyChart';\nimport { DonutChart } from '../DonutChart/index';\nimport { VerticalStackedBarChart } from '../VerticalStackedBarChart/index';\nimport { decodeBase64Fields } from '@fluentui/chart-utilities';\nimport type { Data, PlotData, PlotlySchema, OutputChartType, TraceInfo } from '@fluentui/chart-utilities';\nimport { isArrayOrTypedArray, isMonthArray, mapFluentChart, sanitizeJson } from '@fluentui/chart-utilities';\n\nimport type { GridProperties } from './PlotlySchemaAdapter';\nimport {\n correctYearMonth,\n getGridProperties,\n isNonPlotType,\n transformPlotlyJsonToDonutProps,\n transformPlotlyJsonToVSBCProps,\n transformPlotlyJsonToAreaChartProps,\n transformPlotlyJsonToLineChartProps,\n transformPlotlyJsonToHorizontalBarWithAxisProps,\n transformPlotlyJsonToHeatmapProps,\n transformPlotlyJsonToSankeyProps,\n transformPlotlyJsonToGaugeProps,\n transformPlotlyJsonToGVBCProps,\n transformPlotlyJsonToVBCProps,\n transformPlotlyJsonToChartTableProps,\n transformPlotlyJsonToScatterChartProps,\n getAllupLegendsProps,\n NON_PLOT_KEY_PREFIX,\n SINGLE_REPEAT,\n transformPlotlyJsonToFunnelChartProps,\n transformPlotlyJsonToGanttChartProps,\n transformPlotlyJsonToAnnotationChartProps,\n transformPlotlyJsonToPolarChartProps,\n DEFAULT_POLAR_SUBPLOT,\n} from './PlotlySchemaAdapter';\nimport type { ColorwayType } from './PlotlyColorAdapter';\nimport { LineChart } from '../LineChart/index';\nimport { HorizontalBarChartWithAxis } from '../HorizontalBarChartWithAxis/index';\nimport { AreaChart } from '../AreaChart/index';\nimport { HeatMapChart } from '../HeatMapChart/index';\nimport { SankeyChart } from '../SankeyChart/SankeyChart';\nimport { GaugeChart } from '../GaugeChart/index';\nimport { GroupedVerticalBarChart } from '../GroupedVerticalBarChart/index';\nimport { VerticalBarChart } from '../VerticalBarChart/index';\nimport { IChart, IImageExportOptions } from '../../types/index';\nimport { withResponsiveContainer } from '../ResponsiveContainer/withResponsiveContainer';\nimport { ScatterChart } from '../ScatterChart/index';\nimport { ChartTable } from '../ChartTable/index';\nimport { FunnelChart } from '../FunnelChart/FunnelChart';\nimport { GanttChart } from '../GanttChart/index';\nimport { ILegendContainer, ILegendsProps, Legends } from '../Legends/index';\nimport type { JSXElement } from '@fluentui/utilities';\nimport { exportChartsAsImage } from '../../utilities/image-export-utils';\nimport { resolveCSSVariables } from '../../utilities/utilities';\nimport { getChartTitleInlineStyles } from '../../utilities/Common.styles';\nimport { PolarChart } from '../PolarChart/index';\n\nconst ResponsiveDonutChart = withResponsiveContainer(DonutChart);\nconst ResponsiveVerticalStackedBarChart = withResponsiveContainer(VerticalStackedBarChart);\nconst ResponsiveLineChart = withResponsiveContainer(LineChart);\nconst ResponsiveHorizontalBarChartWithAxis = withResponsiveContainer(HorizontalBarChartWithAxis);\nconst ResponsiveAreaChart = withResponsiveContainer(AreaChart);\nconst ResponsiveHeatMapChart = withResponsiveContainer(HeatMapChart);\nconst ResponsiveSankeyChart = withResponsiveContainer(SankeyChart);\nconst ResponsiveGaugeChart = withResponsiveContainer(GaugeChart);\nconst ResponsiveGroupedVerticalBarChart = withResponsiveContainer(GroupedVerticalBarChart);\nconst ResponsiveVerticalBarChart = withResponsiveContainer(VerticalBarChart);\nconst ResponsiveScatterChart = withResponsiveContainer(ScatterChart);\nconst ResponsiveChartTable = withResponsiveContainer(ChartTable);\n// Removing responsive wrapper for FunnelChart as responsive container is not working with FunnelChart\n//const ResponsiveFunnelChart = withResponsiveContainer(FunnelChart);\nconst ResponsiveGanttChart = withResponsiveContainer(GanttChart);\nconst ResponsivePolarChart = withResponsiveContainer(PolarChart);\n\n// Default x-axis key for grouping traces. Also applicable for PieData and SankeyData where x-axis is not defined.\nconst DEFAULT_XAXIS = 'x';\n\n/**\n * DeclarativeChart schema.\n * {@docCategory DeclarativeChart}\n */\nexport interface Schema {\n /**\n * Plotly schema represented as JSON object\n */\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n plotlySchema: any;\n}\n\n/**\n * DeclarativeChart props.\n * {@docCategory DeclarativeChart}\n */\nexport interface DeclarativeChartProps extends React.RefAttributes<HTMLDivElement> {\n /**\n * The schema representing the chart data, layout and configuration\n */\n chartSchema: Schema;\n\n /**\n * Callback when an event occurs\n */\n onSchemaChange?: (eventData: Schema) => void;\n\n /**\n * Optional callback to access the IDeclarativeChart interface. Use this instead of ref for accessing\n * the public methods and properties of the component.\n */\n componentRef?: IRefObject<IDeclarativeChart>;\n\n /**\n * Optional prop to specify the colorway type of the chart.\n * - 'default': Use Fluent UI color palette aligning with plotly colorway.\n * - 'builtin': Use Fluent UI colorway.\n * - 'others': Reserved for future colorways.\n * @default 'default'\n */\n colorwayType?: ColorwayType;\n}\n\n/**\n * {@docCategory DeclarativeChart}\n */\nexport interface IDeclarativeChart {\n exportAsImage: (opts?: IImageExportOptions) => Promise<string>;\n}\n\nconst useColorMapping = () => {\n const colorMap = React.useRef(new Map<string, string>());\n return colorMap;\n};\n\nfunction renderChart<TProps>(\n Renderer: React.ComponentType<TProps>,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n transformer: (...args: any[]) => TProps,\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n transformerArgs: any[],\n commonProps: Partial<TProps>,\n cellRow: number,\n cellColumn: number,\n): JSXElement {\n const chartProps = transformer(...transformerArgs);\n return (\n <div\n key={`${cellRow}_${cellColumn}`}\n style={{\n gridRowStart: cellRow,\n gridRowEnd: cellRow + 1,\n gridColumnStart: cellColumn,\n gridColumnEnd: cellColumn + 1,\n }}\n >\n <Renderer {...chartProps} {...commonProps} />\n </div>\n );\n}\n\ntype PreTransformHooks = {\n preTransformCondition?: (plotlySchema: PlotlySchema) => boolean;\n preTransformOperation?: (plotlySchema: PlotlySchema) => PlotlySchema;\n};\n\nconst LineAreaPreTransformOp = (plotlyInput: PlotlySchema) => {\n const xValues = (plotlyInput.data[0] as PlotData).x;\n const isXMonth = isMonthArray(xValues);\n let renderData = plotlyInput.data;\n if (isXMonth) {\n renderData = plotlyInput.data.map((dataPoint: PlotData) => ({\n ...dataPoint,\n x: correctYearMonth(dataPoint.x),\n }));\n }\n return { data: renderData, layout: plotlyInput.layout };\n};\n\ntype ChartTypeMap = {\n annotation: {\n transformer: typeof transformPlotlyJsonToAnnotationChartProps;\n renderer: typeof AnnotationOnlyChart;\n } & PreTransformHooks;\n donut: {\n transformer: typeof transformPlotlyJsonToDonutProps;\n renderer: typeof ResponsiveDonutChart;\n } & PreTransformHooks;\n sankey: {\n transformer: typeof transformPlotlyJsonToSankeyProps;\n renderer: typeof ResponsiveSankeyChart;\n } & PreTransformHooks;\n table: {\n transformer: typeof transformPlotlyJsonToChartTableProps;\n renderer: typeof ResponsiveChartTable;\n } & PreTransformHooks;\n horizontalbar: {\n transformer: typeof transformPlotlyJsonToHorizontalBarWithAxisProps;\n renderer: typeof ResponsiveHorizontalBarChartWithAxis;\n } & PreTransformHooks;\n groupedverticalbar: {\n transformer: typeof transformPlotlyJsonToGVBCProps;\n renderer: typeof ResponsiveGroupedVerticalBarChart;\n } & PreTransformHooks;\n verticalstackedbar: {\n transformer: typeof transformPlotlyJsonToVSBCProps;\n renderer: typeof ResponsiveVerticalStackedBarChart;\n } & PreTransformHooks;\n heatmap: {\n transformer: typeof transformPlotlyJsonToHeatmapProps;\n renderer: typeof ResponsiveHeatMapChart;\n } & PreTransformHooks;\n gauge: {\n transformer: typeof transformPlotlyJsonToGaugeProps;\n renderer: typeof ResponsiveGaugeChart;\n } & PreTransformHooks;\n verticalbar: {\n transformer: typeof transformPlotlyJsonToVBCProps;\n renderer: typeof ResponsiveVerticalBarChart;\n } & PreTransformHooks;\n area: {\n transformer: typeof transformPlotlyJsonToAreaChartProps;\n renderer: typeof ResponsiveAreaChart;\n } & PreTransformHooks;\n line: {\n transformer: typeof transformPlotlyJsonToLineChartProps;\n renderer: typeof ResponsiveLineChart;\n } & PreTransformHooks;\n scatter: {\n transformer: typeof transformPlotlyJsonToScatterChartProps;\n renderer: typeof ResponsiveScatterChart;\n } & PreTransformHooks;\n funnel: {\n transformer: typeof transformPlotlyJsonToFunnelChartProps;\n renderer: typeof FunnelChart;\n } & PreTransformHooks;\n gantt: {\n transformer: typeof transformPlotlyJsonToGanttChartProps;\n renderer: typeof ResponsiveGanttChart;\n } & PreTransformHooks;\n scatterpolar: {\n transformer: typeof transformPlotlyJsonToPolarChartProps;\n renderer: typeof ResponsivePolarChart;\n } & PreTransformHooks;\n fallback: {\n transformer: typeof transformPlotlyJsonToVSBCProps;\n renderer: typeof ResponsiveVerticalStackedBarChart;\n } & PreTransformHooks;\n};\n\nconst chartMap: ChartTypeMap = {\n annotation: {\n transformer: transformPlotlyJsonToAnnotationChartProps,\n renderer: AnnotationOnlyChart,\n },\n // PieData category charts\n donut: {\n transformer: transformPlotlyJsonToDonutProps,\n renderer: ResponsiveDonutChart,\n },\n // SankeyData category charts\n sankey: {\n transformer: transformPlotlyJsonToSankeyProps,\n renderer: ResponsiveSankeyChart,\n },\n // TableData category charts\n table: {\n transformer: transformPlotlyJsonToChartTableProps,\n renderer: ResponsiveChartTable,\n },\n // PlotData category charts\n horizontalbar: {\n transformer: transformPlotlyJsonToHorizontalBarWithAxisProps,\n renderer: ResponsiveHorizontalBarChartWithAxis,\n },\n groupedverticalbar: {\n transformer: transformPlotlyJsonToGVBCProps,\n renderer: ResponsiveGroupedVerticalBarChart,\n },\n verticalstackedbar: {\n transformer: transformPlotlyJsonToVSBCProps,\n renderer: ResponsiveVerticalStackedBarChart,\n },\n heatmap: {\n transformer: transformPlotlyJsonToHeatmapProps,\n renderer: ResponsiveHeatMapChart,\n },\n gauge: {\n transformer: transformPlotlyJsonToGaugeProps,\n renderer: ResponsiveGaugeChart,\n },\n verticalbar: {\n transformer: transformPlotlyJsonToVBCProps,\n renderer: ResponsiveVerticalBarChart,\n },\n area: {\n transformer: transformPlotlyJsonToAreaChartProps,\n renderer: ResponsiveAreaChart,\n preTransformOperation: LineAreaPreTransformOp,\n },\n line: {\n transformer: transformPlotlyJsonToLineChartProps,\n renderer: ResponsiveLineChart,\n preTransformOperation: LineAreaPreTransformOp,\n },\n scatter: {\n transformer: transformPlotlyJsonToScatterChartProps,\n renderer: ResponsiveScatterChart,\n preTransformOperation: LineAreaPreTransformOp,\n },\n funnel: {\n transformer: transformPlotlyJsonToFunnelChartProps,\n renderer: FunnelChart,\n },\n gantt: {\n transformer: transformPlotlyJsonToGanttChartProps,\n renderer: ResponsiveGanttChart,\n },\n scatterpolar: {\n transformer: transformPlotlyJsonToPolarChartProps,\n renderer: ResponsivePolarChart,\n },\n fallback: {\n transformer: transformPlotlyJsonToVSBCProps,\n renderer: ResponsiveVerticalStackedBarChart,\n },\n};\n\n/**\n * DeclarativeChart component.\n * {@docCategory DeclarativeChart}\n */\nexport const DeclarativeChart: React.FunctionComponent<DeclarativeChartProps> = React.forwardRef<\n HTMLDivElement,\n DeclarativeChartProps\n>(({ colorwayType = 'default', onSchemaChange, ...props }, forwardedRef) => {\n const { plotlySchema } = sanitizeJson(props.chartSchema);\n const chart: OutputChartType = mapFluentChart(plotlySchema);\n if (!chart.isValid) {\n throw new Error(`Invalid chart schema: ${chart.errorMessage}`);\n }\n let plotlyInput = plotlySchema as PlotlySchema;\n try {\n plotlyInput = decodeBase64Fields(plotlyInput);\n } catch (error) {\n throw new Error(`Failed to decode plotly schema: ${error}`);\n }\n const plotlyInputWithValidData: PlotlySchema = {\n ...plotlyInput,\n data: chart.validTracesInfo!.map(trace => plotlyInput.data[trace.index]),\n };\n\n const validTracesFilteredIndex: TraceInfo[] = chart.validTracesInfo!.map((trace, index) => ({\n index,\n type: trace.type,\n }));\n\n let { selectedLegends } = plotlySchema;\n const colorMap = useColorMapping();\n const theme = useTheme();\n const isDarkTheme = theme?.isInverted ?? false;\n const chartRefs = React.useRef<{ compRef: IChart | null; row: number; col: number }[]>([]);\n const isMultiPlot = React.useRef(false);\n const legendsRef = React.useRef<ILegendContainer>(null);\n const containerRef = React.useRef<HTMLDivElement>(null);\n\n if (!isArrayOrTypedArray(selectedLegends)) {\n selectedLegends = [];\n }\n\n const [activeLegends, setActiveLegends] = React.useState<string[]>(selectedLegends);\n const onActiveLegendsChange = React.useCallback(\n (keys: string[]) => {\n setActiveLegends(keys);\n if (onSchemaChange) {\n onSchemaChange({ plotlySchema: { plotlyInput, selectedLegends: keys } });\n }\n },\n [onSchemaChange, plotlyInput],\n );\n\n React.useEffect(() => {\n // eslint-disable-next-line @typescript-eslint/no-shadow\n const { plotlySchema } = sanitizeJson(props.chartSchema);\n // eslint-disable-next-line @typescript-eslint/no-shadow\n const { selectedLegends } = plotlySchema;\n setActiveLegends(selectedLegends ?? []);\n }, [props.chartSchema]);\n\n const multiSelectLegendProps = {\n canSelectMultipleLegends: true,\n onChange: onActiveLegendsChange,\n selectedLegends: activeLegends,\n };\n\n const interactiveCommonProps = {\n legendProps: multiSelectLegendProps,\n calloutProps: { layerProps: { eventBubblingEnabled: true } },\n };\n\n function createLegends(legendProps: ILegendsProps): JSXElement {\n return (\n <Legends {...legendProps} selectedLegends={activeLegends} onChange={onActiveLegendsChange} ref={legendsRef} />\n );\n }\n\n const exportAsImage = React.useCallback(\n async (opts?: IImageExportOptions) => {\n if (!containerRef.current) {\n throw new Error('Container reference is null');\n }\n\n const imgExpOpts = {\n background: resolveCSSVariables(containerRef.current, theme.semanticColors.bodyBackground),\n scale: 5,\n ...opts,\n };\n\n if (!isMultiPlot.current) {\n if (!chartRefs.current[0]?.compRef?.toImage) {\n throw new Error('Chart cannot be exported as image');\n }\n\n return chartRefs.current[0].compRef.toImage(imgExpOpts);\n }\n\n return exportChartsAsImage(\n chartRefs.current.map(item => ({\n container: item.compRef?.chartContainer,\n row: item.row,\n col: item.col,\n })),\n legendsRef.current?.toSVG,\n getRTL(),\n imgExpOpts,\n );\n },\n [theme],\n );\n\n React.useImperativeHandle(\n props.componentRef,\n () => ({\n exportAsImage,\n }),\n [exportAsImage],\n );\n\n const groupedTraces: Record<string, number[]> = Object.create(null);\n let nonCartesianTraceCount = 0;\n\n // For annotation-only charts, create a single group entry\n if (chart.type === 'annotation') {\n groupedTraces[DEFAULT_XAXIS] = [];\n } else {\n plotlyInputWithValidData.data.forEach((trace: Data, index: number) => {\n let traceKey = '';\n if (isNonPlotType(chart.validTracesInfo![index].type)) {\n traceKey = `${NON_PLOT_KEY_PREFIX}${nonCartesianTraceCount + 1}`;\n nonCartesianTraceCount++;\n } else {\n traceKey =\n chart.validTracesInfo![index].type === 'scatterpolar'\n ? (trace as { subplot?: string }).subplot ?? DEFAULT_POLAR_SUBPLOT\n : (trace as PlotData).xaxis ?? DEFAULT_XAXIS;\n }\n if (!groupedTraces[traceKey]) {\n groupedTraces[traceKey] = [];\n }\n groupedTraces[traceKey].push(index);\n });\n }\n\n isMultiPlot.current = Object.keys(groupedTraces).length > 1;\n const gridProperties: GridProperties = getGridProperties(\n plotlyInputWithValidData,\n isMultiPlot.current,\n chart.validTracesInfo!,\n );\n\n // Render only one plot if the grid properties cannot determine positioning of multiple plots.\n if (\n isMultiPlot.current &&\n gridProperties.templateRows === SINGLE_REPEAT &&\n gridProperties.templateColumns === SINGLE_REPEAT\n ) {\n if (chart.type === 'donut') {\n // If there are multiple data traces for donut/pie, picking the last one similar to plotly\n const keys = Object.keys(groupedTraces);\n keys.forEach((key, index) => {\n if (index < keys.length - 1) {\n delete groupedTraces[key];\n }\n });\n } else {\n Object.keys(groupedTraces).forEach((key, index) => {\n if (index > 0) {\n delete groupedTraces[key];\n }\n });\n }\n isMultiPlot.current = false;\n }\n\n const allupLegendsProps = getAllupLegendsProps(\n plotlyInputWithValidData,\n colorMap,\n colorwayType,\n chart.validTracesInfo!,\n isDarkTheme,\n );\n\n type ChartType = keyof ChartTypeMap;\n\n const titleObj = plotlyInputWithValidData.layout?.title;\n const chartTitle = typeof titleObj === 'string' ? titleObj : titleObj?.text ?? '';\n const titleFont = typeof titleObj === 'object' ? titleObj?.font : undefined;\n\n const { fontFamily, fontSize, fontWeight } = theme.fonts.medium;\n const titleStyle: React.CSSProperties = {\n fontFamily,\n fontSize,\n fontWeight,\n color: theme.semanticColors.bodyText,\n textAlign: 'center',\n marginBottom: '8px',\n ...getChartTitleInlineStyles(titleFont),\n };\n\n // map through the grouped traces and render the appropriate chart\n return (\n <>\n {isMultiPlot.current && chartTitle && <div style={titleStyle}>{chartTitle}</div>}\n <div\n style={{\n display: 'grid',\n gridTemplateRows: gridProperties.templateRows,\n gridTemplateColumns: gridProperties.templateColumns,\n }}\n ref={containerRef}\n >\n {Object.entries(groupedTraces).map(([xAxisKey, index], chartIdx) => {\n const plotlyInputForGroup: PlotlySchema = {\n ...plotlyInputWithValidData,\n data: index.map(idx => plotlyInputWithValidData.data[idx]),\n };\n\n const filteredTracesInfo = validTracesFilteredIndex.filter(trace => index.includes(trace.index));\n let chartType =\n chart.type === 'fallback' || chart.type === 'groupedverticalbar'\n ? chart.type\n : filteredTracesInfo[0]?.type ?? chart.type;\n\n if (\n validTracesFilteredIndex.some(trace => trace.type === 'line') &&\n validTracesFilteredIndex.some(trace => trace.type === 'scatter')\n ) {\n chartType = 'line';\n }\n\n const chartEntry = chartMap[chartType as ChartType];\n if (chartEntry) {\n const { transformer, renderer, preTransformCondition, preTransformOperation } = chartEntry;\n if (preTransformCondition === undefined || preTransformCondition(plotlyInputForGroup)) {\n const transformedInput = preTransformOperation\n ? preTransformOperation(plotlyInputForGroup)\n : plotlyInputForGroup;\n const cellProperties = gridProperties.layout[xAxisKey];\n\n const resolvedCommonProps = (\n chartType === 'annotation'\n ? {}\n : {\n ...interactiveCommonProps,\n }\n ) as Partial<ReturnType<typeof transformer>>;\n\n return renderChart<ReturnType<typeof transformer>>(\n renderer,\n transformer,\n [transformedInput, isMultiPlot.current, colorMap, colorwayType, isDarkTheme],\n {\n ...resolvedCommonProps,\n ...(cellProperties?.xAnnotation && { xAxisAnnotation: cellProperties.xAnnotation }),\n ...(cellProperties?.yAnnotation && { yAxisAnnotation: cellProperties.yAnnotation }),\n componentRef: (ref: IChart | null) => {\n chartRefs.current[chartIdx] = {\n compRef: ref,\n row: cellProperties?.row ?? 1,\n col: cellProperties?.column ?? 1,\n };\n },\n },\n cellProperties?.row ?? 1,\n cellProperties?.column ?? 1,\n );\n }\n return <></>;\n } else {\n throw new Error(`Unsupported chart type :${plotlyInputForGroup.data[0]?.type}`);\n }\n })}\n </div>\n {isMultiPlot.current && createLegends(allupLegendsProps)}\n </>\n );\n});\nDeclarativeChart.displayName = 'DeclarativeChart';\n"]}
@@ -11,7 +11,7 @@ import { IGroupedVerticalBarChartProps } from '../GroupedVerticalBarChart/index'
11
11
  import { IVerticalBarChartProps } from '../VerticalBarChart/index';
12
12
  import { IChartTableProps } from '../ChartTable/index';
13
13
  import type { IAnnotationOnlyChartProps } from '../AnnotationOnlyChart/AnnotationOnlyChart.types';
14
- import type { Datum, PlotlySchema, PlotData, TypedArray, Color, TraceInfo } from '@fluentui/chart-utilities';
14
+ import type { Datum, Layout, PlotlySchema, PlotData, TypedArray, Data, Color, LayoutAxis, TraceInfo } from '@fluentui/chart-utilities';
15
15
  import type { ColorwayType } from './PlotlyColorAdapter';
16
16
  import { IFunnelChartProps } from '../FunnelChart/FunnelChart.types';
17
17
  import { ILegendsProps } from '../Legends/index';
@@ -77,5 +77,9 @@ export declare const getNumberAtIndexOrDefault: (data: PlotData["z"] | undefined
77
77
  export declare const getValidXYRanges: (series: Partial<PlotData>, resolveX?: (v: Datum) => Datum, resolveY?: (v: Datum) => Datum) => [number, number][];
78
78
  export declare const isNonPlotType: (chartType: string) => boolean;
79
79
  export declare const getGridProperties: (schema: PlotlySchema | undefined, isMultiPlot: boolean, validTracesInfo: TraceInfo[]) => GridProperties;
80
+ interface IAxisObject extends Partial<LayoutAxis> {
81
+ _id: string;
82
+ }
83
+ export declare const getAxisObjects: (data: Data[], layout: Partial<Layout> | undefined) => Record<string, IAxisObject>;
80
84
  export declare const DEFAULT_POLAR_SUBPLOT = "polar";
81
85
  export {};
@@ -1,7 +1,7 @@
1
1
  define(["require", "exports", "tslib", "d3-array", "d3-scale", "d3-format", "../../utilities/colors", "../GaugeChart/index", "../../utilities/utilities", "@fluentui/chart-utilities", "d3-shape", "./PlotlyColorAdapter", "d3-color", "@fluentui/react"], function (require, exports, tslib_1, d3_array_1, d3_scale_1, d3_format_1, colors_1, index_1, utilities_1, chart_utilities_1, d3_shape_1, PlotlyColorAdapter_1, d3_color_1, react_1) {
2
2
  "use strict";
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
- exports.DEFAULT_POLAR_SUBPLOT = exports.getGridProperties = exports.isNonPlotType = exports.getValidXYRanges = exports.getNumberAtIndexOrDefault = exports.getAllupLegendsProps = exports.transformPlotlyJsonToPolarChartProps = exports.transformPlotlyJsonToFunnelChartProps = exports.transformPlotlyJsonToChartTableProps = exports.transformPlotlyJsonToGaugeProps = exports.transformPlotlyJsonToSankeyProps = exports.transformPlotlyJsonToHeatmapProps = exports.transformPlotlyJsonToGanttChartProps = exports.transformPlotlyJsonToHorizontalBarWithAxisProps = exports.transformPlotlyJsonToScatterChartProps = exports.transformPlotlyJsonToLineChartProps = exports.transformPlotlyJsonToAreaChartProps = exports.transformPlotlyJsonToVBCProps = exports.transformPlotlyJsonToGVBCProps = exports.transformPlotlyJsonToVSBCProps = exports.transformPlotlyJsonToDonutProps = exports.transformPlotlyJsonToAnnotationChartProps = exports.normalizeObjectArrayForGVBC = exports.resolveXAxisPoint = exports._getGaugeAxisColor = exports.correctYearMonth = exports.SINGLE_REPEAT = exports.NON_PLOT_KEY_PREFIX = void 0;
4
+ exports.DEFAULT_POLAR_SUBPLOT = exports.getAxisObjects = exports.getGridProperties = exports.isNonPlotType = exports.getValidXYRanges = exports.getNumberAtIndexOrDefault = exports.getAllupLegendsProps = exports.transformPlotlyJsonToPolarChartProps = exports.transformPlotlyJsonToFunnelChartProps = exports.transformPlotlyJsonToChartTableProps = exports.transformPlotlyJsonToGaugeProps = exports.transformPlotlyJsonToSankeyProps = exports.transformPlotlyJsonToHeatmapProps = exports.transformPlotlyJsonToGanttChartProps = exports.transformPlotlyJsonToHorizontalBarWithAxisProps = exports.transformPlotlyJsonToScatterChartProps = exports.transformPlotlyJsonToLineChartProps = exports.transformPlotlyJsonToAreaChartProps = exports.transformPlotlyJsonToVBCProps = exports.transformPlotlyJsonToGVBCProps = exports.transformPlotlyJsonToVSBCProps = exports.transformPlotlyJsonToDonutProps = exports.transformPlotlyJsonToAnnotationChartProps = exports.normalizeObjectArrayForGVBC = exports.resolveXAxisPoint = exports._getGaugeAxisColor = exports.correctYearMonth = exports.SINGLE_REPEAT = exports.NON_PLOT_KEY_PREFIX = void 0;
5
5
  exports.findArrayAttributes = findArrayAttributes;
6
6
  exports.NON_PLOT_KEY_PREFIX = 'nonplot_';
7
7
  exports.SINGLE_REPEAT = 'repeat(1, 1fr)';
@@ -331,7 +331,7 @@ define(["require", "exports", "tslib", "d3-array", "d3-scale", "d3-format", "../
331
331
  */
332
332
  var flattenObject = function (obj, prefix) {
333
333
  if (prefix === void 0) { prefix = ''; }
334
- var flattened = {};
334
+ var flattened = Object.create(null);
335
335
  for (var key in obj) {
336
336
  if (Object.prototype.hasOwnProperty.call(obj, key)) {
337
337
  var newKey = prefix ? "".concat(prefix, ".").concat(key) : key;
@@ -886,7 +886,7 @@ define(["require", "exports", "tslib", "d3-array", "d3-scale", "d3-format", "../
886
886
  if (typeof item === 'object' && item !== null) {
887
887
  var flattened_1 = flattenObject(item);
888
888
  // Only keep keys where the value is numeric (number or numeric string) and not a style key
889
- var filtered_1 = {};
889
+ var filtered_1 = Object.create(null);
890
890
  Object.keys(flattened_1).forEach(function (key) {
891
891
  var value = flattened_1[key];
892
892
  if (!shouldIgnoreKey(key) && (typeof value === 'number' || (typeof value === 'string' && (0, chart_utilities_1.isNumber)(value)))) {
@@ -981,7 +981,7 @@ define(["require", "exports", "tslib", "d3-array", "d3-scale", "d3-format", "../
981
981
  // use piecolorway if available
982
982
  // otherwise, default to colorway from template
983
983
  var colors = (0, PlotlyColorAdapter_1.extractColor)((_b = (_a = input.layout) === null || _a === void 0 ? void 0 : _a.piecolorway) !== null && _b !== void 0 ? _b : (_e = (_d = (_c = input.layout) === null || _c === void 0 ? void 0 : _c.template) === null || _d === void 0 ? void 0 : _d.layout) === null || _e === void 0 ? void 0 : _e.colorway, colorwayType, (_g = (_f = input.layout) === null || _f === void 0 ? void 0 : _f.piecolorway) !== null && _g !== void 0 ? _g : (_h = firstData === null || firstData === void 0 ? void 0 : firstData.marker) === null || _h === void 0 ? void 0 : _h.colors, colorMap, isDarkTheme, true);
984
- var mapLegendToDataPoint = {};
984
+ var mapLegendToDataPoint = Object.create(null);
985
985
  // clear colorMap for donut chart to reassign colors as the colorMap initially gets assigned by
986
986
  // getAllupLegendsProps function without sorting labels by value
987
987
  colorMap.current.clear();
@@ -1051,14 +1051,14 @@ define(["require", "exports", "tslib", "d3-array", "d3-scale", "d3-format", "../
1051
1051
  // eslint-disable-next-line @typescript-eslint/no-deprecated
1052
1052
  colorMap, colorwayType, isDarkTheme, fallbackVSBC) {
1053
1053
  var _a, _b, _c, _d, _e;
1054
- var mapXToDataPoints = {};
1054
+ var mapXToDataPoints = Object.create(null);
1055
1055
  var yMaxValue = 0;
1056
1056
  var yMinValue = 0;
1057
1057
  var secondaryYAxisValues = getSecondaryYAxisValues(input.data, input.layout);
1058
1058
  var _f = getLegendProps(input.data, input.layout, isMultiPlot), legends = _f.legends, hideLegend = _f.hideLegend;
1059
1059
  var colorScale = undefined;
1060
1060
  var yAxisTickFormat = getYAxisTickFormat(input.data[0], input.layout);
1061
- var resolveXValue = getAxisValueResolver(getAxisType(input.data, getAxisObjects(input.data, input.layout).x));
1061
+ var resolveXValue = getAxisValueResolver(getAxisType(input.data, (0, exports.getAxisObjects)(input.data, input.layout).x));
1062
1062
  input.data.forEach(function (series, index1) {
1063
1063
  var _a, _b, _c, _d, _e, _f, _g, _h;
1064
1064
  colorScale = (0, PlotlyColorAdapter_1.createColorScale)(input.layout, series, colorScale);
@@ -1422,7 +1422,7 @@ define(["require", "exports", "tslib", "d3-array", "d3-scale", "d3-format", "../
1422
1422
  var mode = 'tonexty';
1423
1423
  var _q = getLegendProps(input.data, input.layout, isMultiPlot), legends = _q.legends, hideLegend = _q.hideLegend;
1424
1424
  var yAxisTickFormat = getYAxisTickFormat(input.data[0], input.layout);
1425
- var resolveXValue = getAxisValueResolver(getAxisType(input.data, getAxisObjects(input.data, input.layout).x));
1425
+ var resolveXValue = getAxisValueResolver(getAxisType(input.data, (0, exports.getAxisObjects)(input.data, input.layout).x));
1426
1426
  var chartData = input.data
1427
1427
  .map(function (series, index) {
1428
1428
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
@@ -1621,7 +1621,7 @@ define(["require", "exports", "tslib", "d3-array", "d3-scale", "d3-format", "../
1621
1621
  var data = input.data.filter(function (series) { return series.type !== 'scatter' || series.mode !== 'markers'; });
1622
1622
  var _d = getLegendProps(data, input.layout, isMultiPlot), legends = _d.legends, hideLegend = _d.hideLegend;
1623
1623
  var colorScale = undefined;
1624
- var xAxisType = getAxisType(data, getAxisObjects(data, input.layout).x);
1624
+ var xAxisType = getAxisType(data, (0, exports.getAxisObjects)(data, input.layout).x);
1625
1625
  var resolveXValue = getAxisValueResolver(xAxisType, parseLocalDate);
1626
1626
  var resolveGanttXValue = function (value) {
1627
1627
  var resolvedValue = resolveXValue(value);
@@ -2131,7 +2131,7 @@ define(["require", "exports", "tslib", "d3-array", "d3-scale", "d3-format", "../
2131
2131
  });
2132
2132
  if (isStacked) {
2133
2133
  // Assign a color per series/category and use it for all subValues of that category
2134
- var seriesColors_1 = {};
2134
+ var seriesColors_1 = Object.create(null);
2135
2135
  input.data.forEach(function (series, seriesIdx) {
2136
2136
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o;
2137
2137
  var category = series.name || "Category ".concat(seriesIdx + 1);
@@ -2536,7 +2536,7 @@ define(["require", "exports", "tslib", "d3-array", "d3-scale", "d3-format", "../
2536
2536
  var domainX = [];
2537
2537
  var domainY = [];
2538
2538
  var cartesianDomains = 0;
2539
- var annotations = {};
2539
+ var annotations = Object.create(null);
2540
2540
  var templateRows = '1fr';
2541
2541
  var templateColumns = '1fr';
2542
2542
  var gridLayout = {};
@@ -2816,7 +2816,7 @@ define(["require", "exports", "tslib", "d3-array", "d3-scale", "d3-format", "../
2816
2816
  var getAxisScaleTypeProps = function (data, layout) {
2817
2817
  var _a, _b, _c;
2818
2818
  var result = {};
2819
- var axisObjects = getAxisObjects(data, layout);
2819
+ var axisObjects = (0, exports.getAxisObjects)(data, layout);
2820
2820
  if (((_a = axisObjects.x) === null || _a === void 0 ? void 0 : _a.type) === 'log') {
2821
2821
  result.xScaleType = 'log';
2822
2822
  }
@@ -2833,7 +2833,7 @@ define(["require", "exports", "tslib", "d3-array", "d3-scale", "d3-format", "../
2833
2833
  */
2834
2834
  var getAxisTickProps = function (data, layout) {
2835
2835
  var props = {};
2836
- var axisObjects = getAxisObjects(data, layout);
2836
+ var axisObjects = (0, exports.getAxisObjects)(data, layout);
2837
2837
  Object.keys(axisObjects).forEach(function (axId) {
2838
2838
  var ax = axisObjects[axId];
2839
2839
  if (!ax) {
@@ -2948,7 +2948,7 @@ define(["require", "exports", "tslib", "d3-array", "d3-scale", "d3-format", "../
2948
2948
  yAxisIds.add(axisIds.y);
2949
2949
  });
2950
2950
  var makeAxisObject = function (axLetter, axId) { return (tslib_1.__assign(tslib_1.__assign({}, layout === null || layout === void 0 ? void 0 : layout[(0, chart_utilities_1.getAxisKey)(axLetter, axId)]), { _id: "".concat(axLetter).concat(axId > 1 ? axId : '') })); };
2951
- var axisObjects = {};
2951
+ var axisObjects = Object.create(null);
2952
2952
  if (typeof xAxisId === 'number') {
2953
2953
  axisObjects.x = makeAxisObject('x', xAxisId);
2954
2954
  }
@@ -2961,6 +2961,7 @@ define(["require", "exports", "tslib", "d3-array", "d3-scale", "d3-format", "../
2961
2961
  }
2962
2962
  return axisObjects;
2963
2963
  };
2964
+ exports.getAxisObjects = getAxisObjects;
2964
2965
  var getAxisType = function (data, ax) {
2965
2966
  var _a;
2966
2967
  if (!ax) {