@undp/data-viz 1.3.1 → 1.4.0

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 (103) hide show
  1. package/dist/DataCards.cjs +21 -1
  2. package/dist/DataCards.cjs.map +1 -1
  3. package/dist/DataCards.js +622 -12
  4. package/dist/DataCards.js.map +1 -1
  5. package/dist/GraphEl-B6SoGRFW.cjs +2 -0
  6. package/dist/GraphEl-B6SoGRFW.cjs.map +1 -0
  7. package/dist/{checkIfMultiple-BB7PlCNh.js → GraphEl-Cw2tDUb3.js} +129 -1163
  8. package/dist/GraphEl-Cw2tDUb3.js.map +1 -0
  9. package/dist/GriddedGraphs.cjs +1 -1
  10. package/dist/GriddedGraphs.cjs.map +1 -1
  11. package/dist/GriddedGraphs.d.ts +2 -4
  12. package/dist/GriddedGraphs.js +9 -8
  13. package/dist/GriddedGraphs.js.map +1 -1
  14. package/dist/GriddedGraphsFromConfig.d.ts +2 -4
  15. package/dist/MultiGraphDashboard.cjs +1 -1
  16. package/dist/MultiGraphDashboard.cjs.map +1 -1
  17. package/dist/MultiGraphDashboard.d.ts +16 -12
  18. package/dist/MultiGraphDashboard.js +2 -2
  19. package/dist/MultiGraphDashboardFromConfig.d.ts +16 -12
  20. package/dist/MultiGraphDashboardWideToLongFormat.cjs +1 -1
  21. package/dist/MultiGraphDashboardWideToLongFormat.js +1 -1
  22. package/dist/PerformanceIntensiveMultiGraphDashboard.cjs +2 -0
  23. package/dist/PerformanceIntensiveMultiGraphDashboard.cjs.map +1 -0
  24. package/dist/PerformanceIntensiveMultiGraphDashboard.d.ts +566 -0
  25. package/dist/PerformanceIntensiveMultiGraphDashboard.js +353 -0
  26. package/dist/PerformanceIntensiveMultiGraphDashboard.js.map +1 -0
  27. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.cjs +2 -0
  28. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.cjs.map +1 -0
  29. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.d.ts +570 -0
  30. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.js +38 -0
  31. package/dist/PerformanceIntensiveMultiGraphDashboardFromConfig.js.map +1 -0
  32. package/dist/PerformanceIntensiveScrollStory.cjs +2 -0
  33. package/dist/PerformanceIntensiveScrollStory.cjs.map +1 -0
  34. package/dist/PerformanceIntensiveScrollStory.d.ts +493 -0
  35. package/dist/PerformanceIntensiveScrollStory.js +122 -0
  36. package/dist/PerformanceIntensiveScrollStory.js.map +1 -0
  37. package/dist/ScrollStory.cjs.map +1 -1
  38. package/dist/ScrollStory.d.ts +3 -5
  39. package/dist/ScrollStory.js.map +1 -1
  40. package/dist/SingleGraphDashboard.cjs +1 -1
  41. package/dist/SingleGraphDashboard.cjs.map +1 -1
  42. package/dist/SingleGraphDashboard.d.ts +2 -5
  43. package/dist/SingleGraphDashboard.js +194 -194
  44. package/dist/SingleGraphDashboard.js.map +1 -1
  45. package/dist/SingleGraphDashboardFromConfig.d.ts +2 -4
  46. package/dist/SingleGraphDashboardGeoHubMaps.cjs +2 -0
  47. package/dist/SingleGraphDashboardGeoHubMaps.cjs.map +1 -0
  48. package/dist/SingleGraphDashboardGeoHubMaps.d.ts +428 -0
  49. package/dist/SingleGraphDashboardGeoHubMaps.js +185 -0
  50. package/dist/SingleGraphDashboardGeoHubMaps.js.map +1 -0
  51. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.cjs +2 -0
  52. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.cjs.map +1 -0
  53. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.d.ts +432 -0
  54. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.js +25 -0
  55. package/dist/SingleGraphDashboardGeoHubMapsFromConfig.js.map +1 -0
  56. package/dist/SingleGraphDashboardThreeDGraphs.cjs +2 -0
  57. package/dist/SingleGraphDashboardThreeDGraphs.cjs.map +1 -0
  58. package/dist/SingleGraphDashboardThreeDGraphs.d.ts +540 -0
  59. package/dist/SingleGraphDashboardThreeDGraphs.js +610 -0
  60. package/dist/SingleGraphDashboardThreeDGraphs.js.map +1 -0
  61. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.cjs +2 -0
  62. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.cjs.map +1 -0
  63. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.d.ts +543 -0
  64. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.js +35 -0
  65. package/dist/SingleGraphDashboardThreeDGraphsFromConfig.js.map +1 -0
  66. package/dist/Types.d.ts +38 -11
  67. package/dist/checkIfMultiple-CYp3vADF.js +912 -0
  68. package/dist/checkIfMultiple-CYp3vADF.js.map +1 -0
  69. package/dist/checkIfMultiple-Do4kADNr.cjs +12 -0
  70. package/dist/checkIfMultiple-Do4kADNr.cjs.map +1 -0
  71. package/dist/getSchema.cjs.map +1 -1
  72. package/dist/getSchema.d.ts +7 -5
  73. package/dist/getSchema.js.map +1 -1
  74. package/dist/index.cjs +1 -1
  75. package/dist/index.d.ts +330 -163
  76. package/dist/index.js +150 -136
  77. package/dist/index.js.map +1 -1
  78. package/dist/transformData.cjs +1 -1
  79. package/dist/transformData.d.ts +5 -5
  80. package/dist/transformData.js +2 -2
  81. package/dist/{transformDataForAggregation-DAQJWGNL.js → transformDataForAggregation-CdcwlnNe.js} +2 -2
  82. package/dist/transformDataForAggregation-CdcwlnNe.js.map +1 -0
  83. package/dist/{transformDataForAggregation-BUGJnson.cjs → transformDataForAggregation-Du-Hei-W.cjs} +2 -2
  84. package/dist/transformDataForAggregation-Du-Hei-W.cjs.map +1 -0
  85. package/dist/{transformDataForGraphFromFile-DdNiOWeC.js → transformDataForGraphFromFile-CA0rw80A.js} +2 -2
  86. package/dist/{transformDataForGraphFromFile-DdNiOWeC.js.map → transformDataForGraphFromFile-CA0rw80A.js.map} +1 -1
  87. package/dist/{transformDataForGraphFromFile-CrntpaMU.cjs → transformDataForGraphFromFile-D9G3ToQf.cjs} +2 -2
  88. package/dist/{transformDataForGraphFromFile-CrntpaMU.cjs.map → transformDataForGraphFromFile-D9G3ToQf.cjs.map} +1 -1
  89. package/dist/transformDataForSelect-D8AuvYdf.js +14 -0
  90. package/dist/transformDataForSelect-D8AuvYdf.js.map +1 -0
  91. package/dist/transformDataForSelect-YmStusCI.cjs +2 -0
  92. package/dist/transformDataForSelect-YmStusCI.cjs.map +1 -0
  93. package/dist/validateSchema.d.ts +2 -4
  94. package/package.json +36 -1
  95. package/dist/checkIfMultiple-BB7PlCNh.js.map +0 -1
  96. package/dist/checkIfMultiple-D5ysrI7G.cjs +0 -12
  97. package/dist/checkIfMultiple-D5ysrI7G.cjs.map +0 -1
  98. package/dist/index-D9h2WYDS.cjs +0 -22
  99. package/dist/index-D9h2WYDS.cjs.map +0 -1
  100. package/dist/index-OCoyy1wG.js +0 -635
  101. package/dist/index-OCoyy1wG.js.map +0 -1
  102. package/dist/transformDataForAggregation-BUGJnson.cjs.map +0 -1
  103. package/dist/transformDataForAggregation-DAQJWGNL.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"GraphEl-Cw2tDUb3.js","sources":["../src/Components/Dashboard/GraphEl.tsx"],"sourcesContent":["import { P } from '@undp/design-system-react/Typography';\r\n\r\nimport { ButterflyChart } from '../Graphs/ButterflyChart';\r\nimport { CirclePackingGraph } from '../Graphs/CirclePackingGraph';\r\nimport { DataTable } from '../Graphs/DataTable';\r\nimport { DonutChart } from '../Graphs/DonutChart';\r\nimport { HeatMap } from '../Graphs/HeatMap';\r\nimport { Histogram } from '../Graphs/Histogram';\r\nimport { DualAxisLineChart } from '../Graphs/LineCharts/DualAxisLineChart';\r\nimport { SimpleLineChart } from '../Graphs/LineCharts/LineChart';\r\nimport { MultiLineChart } from '../Graphs/LineCharts/MultiLineChart';\r\nimport { MultiLineAltChart } from '../Graphs/LineCharts/MultiLineAltChart';\r\nimport { SparkLine } from '../Graphs/LineCharts/SparkLine';\r\nimport { BiVariateChoroplethMap } from '../Graphs/Maps/BiVariateMap';\r\nimport { ChoroplethMap } from '../Graphs/Maps/ChoroplethMap';\r\nimport { DotDensityMap } from '../Graphs/Maps/DotDensityMap';\r\nimport { ParetoChart } from '../Graphs/ParetoChart';\r\nimport { ScatterPlot } from '../Graphs/ScatterPlot';\r\nimport { SlopeChart } from '../Graphs/SlopeChart';\r\nimport { AreaChart } from '../Graphs/StackedAreaChart';\r\nimport { StatCardFromData } from '../Graphs/StatCard/StatCardFromData';\r\nimport { TreeMapGraph } from '../Graphs/TreeMapGraph';\r\nimport { UnitChart } from '../Graphs/UnitChart';\r\nimport { DifferenceLineChart } from '../Graphs/LineCharts/DifferenceLineChart';\r\nimport { SankeyChart } from '../Graphs/SankeyChart';\r\nimport { LineChartWithConfidenceInterval } from '../Graphs/LineCharts/LineChartWithConfidenceInterval';\r\nimport { DataCards } from '../Graphs/DataCards';\r\nimport { SimpleBarGraph, GroupedBarGraph, StackedBarGraph } from '../Graphs/BarGraph';\r\nimport { DumbbellChart } from '../Graphs/DumbbellChart';\r\nimport { StripChart } from '../Graphs/StripChart';\r\nimport { BeeSwarmChart } from '../Graphs/BeeSwarmChart';\r\nimport { RadarChart } from '../Graphs/RadarChart';\r\nimport { BulletChart } from '../Graphs/BulletChart';\r\n\r\nimport { getValues } from '@/Utils/getValues';\r\nimport {\r\n DataTableColumnDataType,\r\n GraphConfigurationDataType,\r\n GraphSettingsDataType,\r\n GraphType,\r\n HighlightAreaSettingsDataType,\r\n HighlightAreaSettingsForScatterPlotDataType,\r\n} from '@/Types';\r\n\r\ninterface Props {\r\n graph: GraphType;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n graphData: any;\r\n settings?: GraphSettingsDataType;\r\n debugMode?: boolean;\r\n graphDataConfiguration?: GraphConfigurationDataType[];\r\n readableHeader: {\r\n value: string;\r\n label: string;\r\n }[];\r\n updateFilters?: (_d: string) => void;\r\n}\r\n\r\nfunction GraphEl(props: Props) {\r\n const {\r\n settings,\r\n graph,\r\n graphData,\r\n debugMode,\r\n graphDataConfiguration,\r\n readableHeader,\r\n updateFilters,\r\n } = props;\r\n if (debugMode) {\r\n // eslint-disable-next-line no-console\r\n console.log(`Graph: ${graph}`);\r\n // eslint-disable-next-line no-console\r\n console.log('Transformed data:', graphData);\r\n // eslint-disable-next-line no-console\r\n console.log('Settings:', settings);\r\n }\r\n if (typeof graphData === 'string')\r\n return (\r\n <div\r\n className={`flex my-0 mx-auto grow flex-col justify-center ${\r\n settings?.width ? 'w-fit' : 'w-full'\r\n }`}\r\n style={{ height: 'inherit' }}\r\n >\r\n <P\r\n size='sm'\r\n marginBottom='none'\r\n className='p-2 text-center text-accent-dark-red dark:text-accent-red'\r\n >\r\n {graphData}\r\n </P>\r\n </div>\r\n );\r\n const graphComponents: Record<GraphType, React.ElementType | null> = {\r\n barChart: SimpleBarGraph,\r\n bulletChart: BulletChart,\r\n groupedBarChart: GroupedBarGraph,\r\n stackedBarChart: StackedBarGraph,\r\n lineChart: SimpleLineChart,\r\n dualAxisLineChart: DualAxisLineChart,\r\n multiLineChart: MultiLineChart,\r\n multiLineAltChart: MultiLineAltChart,\r\n stackedAreaChart: AreaChart,\r\n choroplethMap: ChoroplethMap,\r\n biVariateChoroplethMap: BiVariateChoroplethMap,\r\n dotDensityMap: DotDensityMap,\r\n donutChart: DonutChart,\r\n slopeChart: SlopeChart,\r\n scatterPlot: ScatterPlot,\r\n dumbbellChart: DumbbellChart,\r\n treeMap: TreeMapGraph,\r\n circlePacking: CirclePackingGraph,\r\n heatMap: HeatMap,\r\n stripChart: StripChart,\r\n beeSwarmChart: BeeSwarmChart,\r\n butterflyChart: ButterflyChart,\r\n histogram: Histogram,\r\n sparkLine: SparkLine,\r\n paretoChart: ParetoChart,\r\n dataTable: DataTable,\r\n statCard: StatCardFromData,\r\n unitChart: UnitChart,\r\n differenceLineChart: DifferenceLineChart,\r\n sankeyChart: SankeyChart,\r\n lineChartWithConfidenceInterval: LineChartWithConfidenceInterval,\r\n dataCards: DataCards,\r\n radarChart: RadarChart,\r\n };\r\n const getGraphProps = (graphType: GraphType) => {\r\n switch (graphType) {\r\n case 'barChart':\r\n return {\r\n timeline: settings?.timeline,\r\n customLayers: settings?.customLayers,\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n dimmedOpacity: settings?.dimmedOpacity,\r\n orientation: settings?.orientation,\r\n data: graphData,\r\n colors: settings?.colors as string | string[] | undefined,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n height: settings?.height,\r\n width: settings?.width,\r\n suffix: settings?.suffix,\r\n prefix: settings?.prefix,\r\n sources: settings?.sources,\r\n barPadding: settings?.barPadding,\r\n showValues: settings?.showValues,\r\n showTicks: settings?.showTicks,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n truncateBy: settings?.truncateBy,\r\n colorDomain: settings?.colorDomain,\r\n colorLegendTitle:\r\n Object.keys(settings || {}).indexOf('colorLegendTitle') !== -1\r\n ? settings?.colorLegendTitle\r\n : getValues('color', graphDataConfiguration || [], readableHeader || []),\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n relativeHeight: settings?.relativeHeight,\r\n showLabels: settings?.showLabels,\r\n showColorScale: settings?.showColorScale,\r\n maxValue: settings?.maxValue,\r\n minValue: settings?.minValue,\r\n labelOrder: settings?.labelOrder,\r\n tooltip: settings?.tooltip,\r\n refValues: settings?.refValues,\r\n graphID: settings?.graphID,\r\n highlightedDataPoints: settings?.highlightedDataPoints,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n sortData: settings?.sortData,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n showNAColor: settings?.showNAColor,\r\n maxBarThickness: settings?.maxBarThickness,\r\n minBarThickness: settings?.minBarThickness,\r\n maxNumberOfBars: settings?.maxNumberOfBars,\r\n ariaLabel: settings?.ariaLabel,\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseClick: (el: any) => {\r\n updateFilters?.(el.label);\r\n },\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n detailsOnClick: settings?.detailsOnClick,\r\n barAxisTitle: settings?.barAxisTitle,\r\n noOfTicks: settings?.noOfTicks,\r\n valueColor: settings?.valueColor,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n filterNA: settings?.filterNA,\r\n animate: settings?.animate,\r\n naLabel: settings?.naLabel,\r\n };\r\n case 'groupedBarChart':\r\n return {\r\n timeline: settings?.timeline,\r\n customLayers: settings?.customLayers,\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n orientation: settings?.orientation,\r\n data: graphData,\r\n colors: settings?.colors as string[] | undefined,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n showColorScale: settings?.showColorScale,\r\n sources: settings?.sources,\r\n barPadding: settings?.barPadding,\r\n showTicks: settings?.showTicks,\r\n truncateBy: settings?.truncateBy,\r\n colorDomain:\r\n settings?.colorDomain ||\r\n (getValues('size', graphDataConfiguration || [], readableHeader || []) as string[]),\r\n colorLegendTitle: settings?.colorLegendTitle,\r\n suffix: settings?.suffix,\r\n prefix: settings?.prefix,\r\n showValues: settings?.showValues,\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n topMargin: settings?.topMargin,\r\n showLabels: settings?.showLabels,\r\n bottomMargin: settings?.bottomMargin,\r\n relativeHeight: settings?.relativeHeight,\r\n tooltip: settings?.tooltip,\r\n refValues: settings?.refValues,\r\n graphID: settings?.graphID,\r\n labelOrder: settings?.labelOrder,\r\n maxValue: settings?.maxValue,\r\n minValue: settings?.minValue,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n maxBarThickness: settings?.maxBarThickness,\r\n ariaLabel: settings?.ariaLabel,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n detailsOnClick: settings?.detailsOnClick,\r\n barAxisTitle: settings?.barAxisTitle,\r\n noOfTicks: settings?.noOfTicks,\r\n valueColor: settings?.valueColor,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n animate: settings?.animate,\r\n naLabel: settings?.naLabel,\r\n };\r\n case 'stackedBarChart':\r\n return {\r\n timeline: settings?.timeline,\r\n customLayers: settings?.customLayers,\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n orientation: settings?.orientation,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n data: graphData,\r\n colors: settings?.colors as string[] | undefined,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n showColorScale: settings?.showColorScale,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n barPadding: settings?.barPadding,\r\n showTicks: settings?.showTicks,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n truncateBy: settings?.truncateBy,\r\n colorDomain:\r\n settings?.colorDomain ||\r\n (getValues('size', graphDataConfiguration || [], readableHeader || []) as string[]),\r\n colorLegendTitle: settings?.colorLegendTitle,\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n suffix: settings?.suffix,\r\n prefix: settings?.prefix,\r\n labelOrder: settings?.labelOrder,\r\n showValues: settings?.showValues,\r\n showLabels: settings?.showLabels,\r\n relativeHeight: settings?.relativeHeight,\r\n tooltip: settings?.tooltip,\r\n refValues: settings?.refValues,\r\n graphID: settings?.graphID,\r\n maxValue: settings?.maxValue,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n maxBarThickness: settings?.maxBarThickness,\r\n minBarThickness: settings?.minBarThickness,\r\n maxNumberOfBars: settings?.maxNumberOfBars,\r\n sortParameter: settings?.sortParameter,\r\n ariaLabel: settings?.ariaLabel,\r\n detailsOnClick: settings?.detailsOnClick,\r\n barAxisTitle: settings?.barAxisTitle,\r\n noOfTicks: settings?.noOfTicks,\r\n valueColor: settings?.valueColor,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n animate: settings?.animate,\r\n naLabel: settings?.naLabel,\r\n };\r\n case 'bulletChart':\r\n return {\r\n customLayers: settings?.customLayers,\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n dimmedOpacity: settings?.dimmedOpacity,\r\n orientation: settings?.orientation,\r\n data: graphData,\r\n barColor: settings?.colors as string,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n height: settings?.height,\r\n width: settings?.width,\r\n suffix: settings?.suffix,\r\n prefix: settings?.prefix,\r\n sources: settings?.sources,\r\n barPadding: settings?.barPadding,\r\n showValues: settings?.showValues,\r\n showTicks: settings?.showTicks,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n truncateBy: settings?.truncateBy,\r\n colorDomain: settings?.colorDomain,\r\n colorLegendTitle:\r\n Object.keys(settings || {}).indexOf('colorLegendTitle') !== -1\r\n ? settings?.colorLegendTitle\r\n : getValues('color', graphDataConfiguration || [], readableHeader || []),\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n relativeHeight: settings?.relativeHeight,\r\n showLabels: settings?.showLabels,\r\n showColorScale: settings?.showColorScale,\r\n maxValue: settings?.maxValue,\r\n minValue: settings?.minValue,\r\n labelOrder: settings?.labelOrder,\r\n tooltip: settings?.tooltip,\r\n refValues: settings?.refValues,\r\n graphID: settings?.graphID,\r\n highlightedDataPoints: settings?.highlightedDataPoints,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n sortData: settings?.sortData,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n showNAColor: settings?.showNAColor,\r\n maxBarThickness: settings?.maxBarThickness,\r\n minBarThickness: settings?.minBarThickness,\r\n maxNumberOfBars: settings?.maxNumberOfBars,\r\n ariaLabel: settings?.ariaLabel,\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseClick: (el: any) => {\r\n updateFilters?.(el.label);\r\n },\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n detailsOnClick: settings?.detailsOnClick,\r\n barAxisTitle: settings?.barAxisTitle,\r\n noOfTicks: settings?.noOfTicks,\r\n valueColor: settings?.valueColor,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n filterNA: settings?.filterNA,\r\n qualitativeRangeColors: settings?.qualitativeRangeColors,\r\n targetStyle: settings?.targetStyle,\r\n targetColor: settings?.targetColor,\r\n measureBarWidthFactor: settings?.measureBarWidthFactor,\r\n animate: settings?.animate,\r\n naLabel: settings?.naLabel,\r\n };\r\n case 'lineChart':\r\n return {\r\n customLayers: settings?.customLayers,\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n curveType: settings?.curveType,\r\n data: graphData,\r\n graphID: settings?.graphID,\r\n lineColor: settings?.lineColor as string | undefined,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n suffix: settings?.suffix,\r\n prefix: settings?.prefix,\r\n sources: settings?.sources,\r\n noOfXTicks: settings?.noOfXTicks,\r\n dateFormat: settings?.dateFormat,\r\n showValues: settings?.showValues,\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n relativeHeight: settings?.relativeHeight,\r\n tooltip: settings?.tooltip,\r\n refValues: settings?.refValues,\r\n highlightAreaSettings: settings?.highlightAreaSettings as\r\n | HighlightAreaSettingsDataType[]\r\n | undefined,\r\n maxValue: settings?.maxValue,\r\n minValue: settings?.minValue,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n animate: settings?.animate,\r\n strokeWidth: settings?.strokeWidth,\r\n showDots: settings?.showDots,\r\n customHighlightAreaSettings: settings?.customHighlightAreaSettings,\r\n annotations: settings?.annotations,\r\n regressionLine: settings?.regressionLine,\r\n ariaLabel: settings?.ariaLabel,\r\n yAxisTitle: settings?.yAxisTitle,\r\n noOfYTicks: settings?.noOfYTicks,\r\n minDate: settings?.minDate,\r\n maxDate: settings?.maxDate,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n };\r\n case 'lineChartWithConfidenceInterval':\r\n return {\r\n customLayers: settings?.customLayers,\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n data: graphData,\r\n curveType: settings?.curveType,\r\n graphID: settings?.graphID,\r\n lineColor: settings?.lineColor,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n suffix: settings?.suffix,\r\n prefix: settings?.prefix,\r\n sources: settings?.sources,\r\n noOfXTicks: settings?.noOfXTicks,\r\n dateFormat: settings?.dateFormat,\r\n showValues: settings?.showValues,\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n relativeHeight: settings?.relativeHeight,\r\n tooltip: settings?.tooltip,\r\n refValues: settings?.refValues,\r\n highlightAreaSettings: settings?.highlightAreaSettings as\r\n | HighlightAreaSettingsDataType[]\r\n | undefined,\r\n maxValue: settings?.maxValue,\r\n minValue: settings?.minValue,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n animate: settings?.animate,\r\n strokeWidth: settings?.strokeWidth,\r\n showDots: settings?.showDots,\r\n customHighlightAreaSettings: settings?.customHighlightAreaSettings,\r\n annotations: settings?.annotations,\r\n regressionLine: settings?.regressionLine,\r\n ariaLabel: settings?.ariaLabel,\r\n showIntervalDots: settings?.showIntervalDots,\r\n showIntervalValues: settings?.showIntervalValues,\r\n intervalLineStrokeWidth: settings?.intervalLineStrokeWidth,\r\n intervalLineColors: settings?.intervalLineColors,\r\n intervalAreaColor: settings?.intervalAreaColor,\r\n intervalAreaOpacity: settings?.intervalAreaOpacity,\r\n yAxisTitle: settings?.yAxisTitle,\r\n noOfYTicks: settings?.noOfYTicks,\r\n minDate: settings?.minDate,\r\n maxDate: settings?.maxDate,\r\n colorLegendTitle: settings?.colorLegendTitle,\r\n colorLegendColors: settings?.colorLegendColors,\r\n colorLegendDomain: settings?.colorLegendDomain,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n };\r\n case 'dualAxisLineChart':\r\n return {\r\n customLayers: settings?.customLayers,\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n data: graphData,\r\n curveType: settings?.curveType,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n labels: settings?.labels || [\r\n getValues('y1', graphDataConfiguration || [], readableHeader || []),\r\n getValues('y2', graphDataConfiguration || [], readableHeader || []),\r\n ],\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n suffix: settings?.suffix,\r\n prefix: settings?.prefix,\r\n sources: settings?.sources,\r\n noOfXTicks: settings?.noOfXTicks,\r\n dateFormat: settings?.dateFormat,\r\n showValues: settings?.showValues,\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n lineColors: settings?.lineColors,\r\n sameAxes: settings?.sameAxes,\r\n relativeHeight: settings?.relativeHeight,\r\n tooltip: settings?.tooltip,\r\n highlightAreaSettings: settings?.highlightAreaSettings as\r\n | HighlightAreaSettingsDataType[]\r\n | undefined,\r\n graphID: settings?.graphID,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n animate: settings?.animate,\r\n strokeWidth: settings?.strokeWidth,\r\n showDots: settings?.showDots,\r\n colorLegendTitle: settings?.colorLegendTitle,\r\n ariaLabel: settings?.ariaLabel,\r\n noOfYTicks: settings?.noOfYTicks,\r\n minDate: settings?.minDate,\r\n maxDate: settings?.maxDate,\r\n lineSuffixes: settings?.lineSuffixes,\r\n linePrefixes: settings?.linePrefixes,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n };\r\n case 'multiLineChart':\r\n return {\r\n customLayers: settings?.customLayers,\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n dimmedOpacity: settings?.dimmedOpacity,\r\n data: graphData,\r\n curveType: settings?.curveType,\r\n lineColors: settings?.lineColors as string[] | undefined,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n noOfXTicks: settings?.noOfXTicks,\r\n dateFormat: settings?.dateFormat,\r\n suffix: settings?.suffix,\r\n prefix: settings?.prefix,\r\n showColorScale: settings?.showColorScale,\r\n labels:\r\n settings?.labels ||\r\n (getValues('y', graphDataConfiguration || [], readableHeader || []) as string[]),\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n showValues: settings?.showValues,\r\n relativeHeight: settings?.relativeHeight,\r\n showColorLegendAtTop: settings?.showColorLegendAtTop,\r\n tooltip: settings?.tooltip,\r\n refValues: settings?.refValues,\r\n highlightAreaSettings: settings?.highlightAreaSettings as\r\n | HighlightAreaSettingsDataType[]\r\n | undefined,\r\n graphID: settings?.graphID,\r\n maxValue: settings?.maxValue,\r\n minValue: settings?.minValue,\r\n highlightedLines: settings?.highlightedLines,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n animate: settings?.animate,\r\n strokeWidth: settings?.strokeWidth,\r\n showDots: settings?.showDots,\r\n colorLegendTitle: settings?.colorLegendTitle,\r\n customHighlightAreaSettings: settings?.customHighlightAreaSettings,\r\n annotations: settings?.annotations,\r\n ariaLabel: settings?.ariaLabel,\r\n yAxisTitle: settings?.yAxisTitle,\r\n noOfYTicks: settings?.noOfYTicks,\r\n minDate: settings?.minDate,\r\n maxDate: settings?.maxDate,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n dashedLines: settings?.dashedLines,\r\n dashSettings: settings?.dashSettings,\r\n labelsToBeHidden: settings?.labelsToBeHidden,\r\n };\r\n case 'multiLineAltChart':\r\n return {\r\n naLabel: settings?.naLabel,\r\n customLayers: settings?.customLayers,\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n data: graphData,\r\n dimmedOpacity: settings?.dimmedOpacity,\r\n curveType: settings?.curveType,\r\n colors: settings?.colors as string | string[] | undefined,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n noOfXTicks: settings?.noOfXTicks,\r\n dateFormat: settings?.dateFormat,\r\n suffix: settings?.suffix,\r\n prefix: settings?.prefix,\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n relativeHeight: settings?.relativeHeight,\r\n tooltip: settings?.tooltip,\r\n refValues: settings?.refValues,\r\n showLabels: settings?.showLabels,\r\n highlightAreaSettings: settings?.highlightAreaSettings as\r\n | HighlightAreaSettingsDataType[]\r\n | undefined,\r\n graphID: settings?.graphID,\r\n maxValue: settings?.maxValue,\r\n minValue: settings?.minValue,\r\n highlightedLines: settings?.highlightedLines,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n animate: settings?.animate,\r\n strokeWidth: settings?.strokeWidth,\r\n showDots: settings?.showDots,\r\n colorLegendTitle: settings?.colorLegendTitle,\r\n customHighlightAreaSettings: settings?.customHighlightAreaSettings,\r\n annotations: settings?.annotations,\r\n ariaLabel: settings?.ariaLabel,\r\n yAxisTitle: settings?.yAxisTitle,\r\n noOfYTicks: settings?.noOfYTicks,\r\n minDate: settings?.minDate,\r\n maxDate: settings?.maxDate,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n colorDomain: settings?.colorDomain,\r\n showNAColor: settings?.showNAColor,\r\n };\r\n case 'differenceLineChart':\r\n return {\r\n customLayers: settings?.customLayers,\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n data: graphData,\r\n curveType: settings?.curveType,\r\n lineColors: settings?.lineColors as [string, string] | undefined,\r\n diffAreaColors: settings?.diffAreaColors,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n noOfXTicks: settings?.noOfXTicks,\r\n dateFormat: settings?.dateFormat,\r\n suffix: settings?.suffix,\r\n prefix: settings?.prefix,\r\n labels: settings?.labels || [\r\n getValues('y1', graphDataConfiguration || [], readableHeader || []),\r\n getValues('y2', graphDataConfiguration || [], readableHeader || []),\r\n ],\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n showValues: settings?.showValues,\r\n relativeHeight: settings?.relativeHeight,\r\n showColorLegendAtTop: settings?.showColorLegendAtTop,\r\n tooltip: settings?.tooltip,\r\n refValues: settings?.refValues,\r\n highlightAreaSettings: settings?.highlightAreaSettings as\r\n | HighlightAreaSettingsDataType[]\r\n | undefined,\r\n graphID: settings?.graphID,\r\n maxValue: settings?.maxValue,\r\n minValue: settings?.minValue,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n animate: settings?.animate,\r\n strokeWidth: settings?.strokeWidth,\r\n showDots: settings?.showDots,\r\n colorLegendTitle: settings?.colorLegendTitle,\r\n customHighlightAreaSettings: settings?.customHighlightAreaSettings,\r\n annotations: settings?.annotations,\r\n ariaLabel: settings?.ariaLabel,\r\n yAxisTitle: settings?.yAxisTitle,\r\n noOfYTicks: settings?.noOfYTicks,\r\n minDate: settings?.minDate,\r\n maxDate: settings?.maxDate,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n };\r\n case 'stackedAreaChart':\r\n return {\r\n customLayers: settings?.customLayers,\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n data: graphData,\r\n curveType: settings?.curveType,\r\n colors: settings?.colors as string[] | undefined,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n noOfXTicks: settings?.noOfXTicks,\r\n dateFormat: settings?.dateFormat,\r\n colorDomain:\r\n settings?.colorDomain ||\r\n (getValues('y', graphDataConfiguration || [], readableHeader || []) as string[]),\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n colorLegendTitle: settings?.colorLegendTitle,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n topMargin: settings?.topMargin,\r\n relativeHeight: settings?.relativeHeight,\r\n bottomMargin: settings?.bottomMargin,\r\n tooltip: settings?.tooltip,\r\n refValues: settings?.refValues,\r\n highlightAreaSettings: settings?.highlightAreaSettings as\r\n | HighlightAreaSettingsDataType[]\r\n | undefined,\r\n graphID: settings?.graphID,\r\n maxValue: settings?.maxValue,\r\n minValue: settings?.minValue,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n showColorScale: settings?.showColorScale,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n customHighlightAreaSettings: settings?.customHighlightAreaSettings,\r\n annotations: settings?.annotations,\r\n ariaLabel: settings?.ariaLabel,\r\n yAxisTitle: settings?.yAxisTitle,\r\n noOfYTicks: settings?.noOfYTicks,\r\n suffix: settings?.suffix,\r\n prefix: settings?.prefix,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n };\r\n case 'choroplethMap':\r\n return {\r\n timeline: settings?.timeline,\r\n customLayers: settings?.customLayers,\r\n theme: settings?.theme,\r\n dimmedOpacity: settings?.dimmedOpacity,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n graphTitle: settings?.graphTitle,\r\n mapData: settings?.mapData,\r\n mapProjection: settings?.mapProjection,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n colorDomain: settings?.colorDomain as string[] | number[],\r\n colors: settings?.colors as string[] | undefined,\r\n colorLegendTitle:\r\n Object.keys(settings || {}).indexOf('colorLegendTitle') !== -1\r\n ? settings?.colorLegendTitle\r\n : getValues('x', graphDataConfiguration || [], readableHeader || []),\r\n scaleType: settings?.scaleType,\r\n categorical: settings?.categorical,\r\n data: graphData,\r\n scale: settings?.scale,\r\n centerPoint: settings?.centerPoint,\r\n backgroundColor: settings?.backgroundColor,\r\n mapBorderWidth: settings?.mapBorderWidth,\r\n mapNoDataColor: settings?.mapNoDataColor,\r\n mapBorderColor: settings?.mapBorderColor,\r\n relativeHeight: settings?.relativeHeight,\r\n padding: settings?.padding,\r\n isWorldMap: settings?.isWorldMap,\r\n tooltip: settings?.tooltip,\r\n showColorScale: settings?.showColorScale,\r\n zoomScaleExtend: settings?.zoomScaleExtend,\r\n zoomTranslateExtend: settings?.zoomTranslateExtend,\r\n graphID: settings?.graphID,\r\n highlightedIds: settings?.highlightedIds,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n mapProperty: settings?.mapProperty,\r\n showAntarctica: settings?.showAntarctica,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n ariaLabel: settings?.ariaLabel,\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseClick: (el: any) => {\r\n updateFilters?.(el.id);\r\n },\r\n detailsOnClick: settings?.detailsOnClick,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n zoomInteraction: settings?.zoomInteraction,\r\n animate: settings?.animate,\r\n };\r\n case 'biVariateChoroplethMap':\r\n return {\r\n timeline: settings?.timeline,\r\n customLayers: settings?.customLayers,\r\n theme: settings?.theme,\r\n dimmedOpacity: settings?.dimmedOpacity,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n data: graphData,\r\n mapData: settings?.mapData,\r\n mapProjection: settings?.mapProjection,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n xColorLegendTitle:\r\n Object.keys(settings || {}).indexOf('xColorLegendTitle') !== -1\r\n ? settings?.xColorLegendTitle\r\n : getValues('x', graphDataConfiguration || [], readableHeader || []),\r\n yColorLegendTitle:\r\n Object.keys(settings || {}).indexOf('yColorLegendTitle') !== -1\r\n ? settings?.yColorLegendTitle\r\n : getValues('y', graphDataConfiguration || [], readableHeader || []),\r\n xDomain: settings?.xDomain as [number, number, number, number],\r\n yDomain: settings?.yDomain as [number, number, number, number],\r\n colors: settings?.colors as string[][] | undefined,\r\n scale: settings?.scale,\r\n centerPoint: settings?.centerPoint,\r\n backgroundColor: settings?.backgroundColor,\r\n mapBorderWidth: settings?.mapBorderWidth,\r\n mapNoDataColor: settings?.mapNoDataColor,\r\n padding: settings?.padding,\r\n mapBorderColor: settings?.mapBorderColor,\r\n relativeHeight: settings?.relativeHeight,\r\n tooltip: settings?.tooltip,\r\n isWorldMap: settings?.isWorldMap,\r\n zoomScaleExtend: settings?.zoomScaleExtend,\r\n zoomTranslateExtend: settings?.zoomTranslateExtend,\r\n graphID: settings?.graphID,\r\n highlightedIds: settings?.highlightedIds,\r\n mapProperty: settings?.mapProperty,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n showAntarctica: settings?.showAntarctica,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n ariaLabel: settings?.ariaLabel,\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseClick: (el: any) => {\r\n updateFilters?.(el.id);\r\n },\r\n detailsOnClick: settings?.detailsOnClick,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n zoomInteraction: settings?.zoomInteraction,\r\n animate: settings?.animate,\r\n };\r\n case 'dotDensityMap':\r\n return {\r\n timeline: settings?.timeline,\r\n customLayers: settings?.customLayers,\r\n theme: settings?.theme,\r\n dimmedOpacity: settings?.dimmedOpacity,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n graphTitle: settings?.graphTitle,\r\n mapData: settings?.mapData,\r\n mapProjection: settings?.mapProjection,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n maxRadiusValue: settings?.maxRadiusValue,\r\n width: settings?.width,\r\n height: settings?.height,\r\n radius: settings?.radius,\r\n sources: settings?.sources,\r\n colors: settings?.colors as string | string[] | undefined,\r\n colorDomain: settings?.colorDomain,\r\n colorLegendTitle:\r\n Object.keys(settings || {}).indexOf('colorLegendTitle') !== -1\r\n ? settings?.colorLegendTitle\r\n : getValues('color', graphDataConfiguration || [], readableHeader || []),\r\n data: graphData,\r\n scale: settings?.scale,\r\n centerPoint: settings?.centerPoint,\r\n backgroundColor: settings?.backgroundColor,\r\n mapBorderWidth: settings?.mapBorderWidth,\r\n mapNoDataColor: settings?.mapNoDataColor,\r\n mapBorderColor: settings?.mapBorderColor,\r\n padding: settings?.padding,\r\n showLabels: settings?.showLabels,\r\n relativeHeight: settings?.relativeHeight,\r\n isWorldMap: settings?.isWorldMap,\r\n tooltip: settings?.tooltip,\r\n showColorScale: settings?.showColorScale,\r\n zoomScaleExtend: settings?.zoomScaleExtend,\r\n zoomTranslateExtend: settings?.zoomTranslateExtend,\r\n graphID: settings?.graphID,\r\n highlightedDataPoints: settings?.highlightedDataPoints,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n showAntarctica: settings?.showAntarctica,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n ariaLabel: settings?.ariaLabel,\r\n detailsOnClick: settings?.detailsOnClick,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n zoomInteraction: settings?.zoomInteraction,\r\n animate: settings?.animate,\r\n };\r\n case 'donutChart':\r\n return {\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n mainText: settings?.mainText,\r\n data: graphData,\r\n colors: settings?.colors as string[] | undefined,\r\n graphTitle: settings?.graphTitle,\r\n suffix: settings?.suffix,\r\n prefix: settings?.prefix,\r\n sources: settings?.sources,\r\n graphDescription: settings?.graphDescription,\r\n subNote: settings?.subNote,\r\n footNote: settings?.footNote,\r\n radius: settings?.radius,\r\n strokeWidth: settings?.strokeWidth,\r\n showColorScale: settings?.showColorScale,\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n tooltip: settings?.tooltip,\r\n graphID: settings?.graphID,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n colorDomain: settings?.colorDomain,\r\n sortData: settings?.sortData,\r\n language: settings?.language,\r\n width: settings?.width,\r\n height: settings?.height,\r\n minHeight: settings?.minHeight,\r\n relativeHeight: settings?.relativeHeight,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n ariaLabel: settings?.ariaLabel,\r\n legendMaxWidth: settings?.legendMaxWidth,\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseClick: (el: any) => {\r\n updateFilters?.(el.label);\r\n },\r\n detailsOnClick: settings?.detailsOnClick,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n colorScaleMaxWidth: settings?.colorScaleMaxWidth,\r\n };\r\n case 'slopeChart':\r\n return {\r\n customLayers: settings?.customLayers,\r\n theme: settings?.theme,\r\n dimmedOpacity: settings?.dimmedOpacity,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n data: graphData,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n showLabels: settings?.showLabels,\r\n colors: settings?.colors as string | string[] | undefined,\r\n colorDomain: settings?.colorDomain,\r\n colorLegendTitle:\r\n Object.keys(settings || {}).indexOf('colorLegendTitle') !== -1\r\n ? settings?.colorLegendTitle\r\n : getValues('color', graphDataConfiguration || [], readableHeader || []),\r\n radius: settings?.radius,\r\n axisTitles: settings?.axisTitles,\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n relativeHeight: settings?.relativeHeight,\r\n tooltip: settings?.tooltip,\r\n highlightedDataPoints: settings?.highlightedDataPoints,\r\n showColorScale: settings?.showColorScale,\r\n graphID: settings?.graphID,\r\n maxValue: settings?.maxValue,\r\n minValue: settings?.minValue,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n fillContainer: settings?.fillContainer,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n ariaLabel: settings?.ariaLabel,\r\n detailsOnClick: settings?.detailsOnClick,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n animate: settings?.animate,\r\n };\r\n case 'scatterPlot':\r\n return {\r\n timeline: settings?.timeline,\r\n customLayers: settings?.customLayers,\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n dimmedOpacity: settings?.dimmedOpacity,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n data: graphData,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n showLabels: settings?.showLabels,\r\n colors: settings?.colors as string | string[] | undefined,\r\n colorDomain: settings?.colorDomain,\r\n colorLegendTitle:\r\n Object.keys(settings || {}).indexOf('colorLegendTitle') !== -1\r\n ? settings?.colorLegendTitle\r\n : getValues('color', graphDataConfiguration || [], readableHeader || []),\r\n radius: settings?.radius,\r\n xAxisTitle:\r\n Object.keys(settings || {}).indexOf('xAxisTitle') !== -1\r\n ? settings?.xAxisTitle\r\n : getValues('x', graphDataConfiguration || [], readableHeader || []),\r\n yAxisTitle:\r\n Object.keys(settings || {}).indexOf('yAxisTitle') !== -1\r\n ? settings?.yAxisTitle\r\n : getValues('y', graphDataConfiguration || [], readableHeader || []),\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n relativeHeight: settings?.relativeHeight,\r\n tooltip: settings?.tooltip,\r\n refXValues: settings?.refXValues,\r\n refYValues: settings?.refYValues,\r\n highlightedDataPoints: settings?.highlightedDataPoints,\r\n highlightAreaSettings: settings?.highlightAreaSettings as\r\n | HighlightAreaSettingsForScatterPlotDataType[]\r\n | undefined,\r\n showColorScale: settings?.showColorScale,\r\n graphID: settings?.graphID,\r\n maxRadiusValue: settings?.maxRadiusValue,\r\n maxXValue: settings?.maxXValue,\r\n minXValue: settings?.minXValue,\r\n maxYValue: settings?.maxYValue,\r\n minYValue: settings?.minYValue,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n showNAColor: settings?.showNAColor,\r\n customHighlightAreaSettings: settings?.customHighlightAreaSettings,\r\n annotations: settings?.annotations,\r\n regressionLine: settings?.regressionLine,\r\n ariaLabel: settings?.ariaLabel,\r\n detailsOnClick: settings?.detailsOnClick,\r\n noOfXTicks: settings?.noOfXTicks,\r\n noOfYTicks: settings?.noOfYTicks,\r\n labelColor: settings?.labelColor,\r\n xSuffix: settings?.xSuffix,\r\n ySuffix: settings?.ySuffix,\r\n xPrefix: settings?.xPrefix,\r\n yPrefix: settings?.yPrefix,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n animate: settings?.animate,\r\n };\r\n case 'dumbbellChart':\r\n return {\r\n timeline: settings?.timeline,\r\n customLayers: settings?.customLayers,\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n orientation: settings?.orientation,\r\n refValues: settings?.refValues,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n data: graphData,\r\n colors: settings?.colors as string[] | undefined,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n barPadding: settings?.barPadding,\r\n showTicks: settings?.showTicks,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n truncateBy: settings?.truncateBy,\r\n labelOrder: settings?.labelOrder,\r\n showColorScale: settings?.showColorScale,\r\n colorDomain:\r\n settings?.colorDomain ||\r\n (getValues('x', graphDataConfiguration || [], readableHeader || []) as string[]),\r\n colorLegendTitle: settings?.colorLegendTitle,\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n radius: settings?.radius,\r\n relativeHeight: settings?.relativeHeight,\r\n showValues: settings?.showValues,\r\n showLabels: settings?.showLabels,\r\n tooltip: settings?.tooltip,\r\n graphID: settings?.graphID,\r\n maxValue: settings?.maxValue,\r\n minValue: settings?.minValue,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n suffix: settings?.suffix,\r\n prefix: settings?.prefix,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n sortParameter: settings?.sortParameter,\r\n arrowConnector: settings?.arrowConnector,\r\n connectorStrokeWidth: settings?.connectorStrokeWidth,\r\n maxBarThickness: settings?.maxBarThickness,\r\n minBarThickness: settings?.minBarThickness,\r\n maxNumberOfBars: settings?.maxNumberOfBars,\r\n ariaLabel: settings?.ariaLabel,\r\n detailsOnClick: settings?.detailsOnClick,\r\n axisTitle: settings?.axisTitle,\r\n noOfTicks: settings?.noOfTicks,\r\n valueColor: settings?.valueColor,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n animate: settings?.animate,\r\n highlightedDataPoints: settings?.highlightedDataPoints,\r\n dimmedOpacity: settings?.dimmedOpacity,\r\n };\r\n case 'treeMap':\r\n return {\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n dimmedOpacity: settings?.dimmedOpacity,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n data: graphData,\r\n colors: settings?.colors as string | string[] | undefined,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n suffix: settings?.suffix,\r\n prefix: settings?.prefix,\r\n sources: settings?.sources,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n colorDomain: settings?.colorDomain,\r\n colorLegendTitle:\r\n Object.keys(settings || {}).indexOf('colorLegendTitle') !== -1\r\n ? settings?.colorLegendTitle\r\n : getValues('color', graphDataConfiguration || [], readableHeader || []),\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n relativeHeight: settings?.relativeHeight,\r\n showLabels: settings?.showLabels,\r\n tooltip: settings?.tooltip,\r\n showColorScale: settings?.showColorScale,\r\n showValues: settings?.showValues,\r\n graphID: settings?.graphID,\r\n highlightedDataPoints: settings?.highlightedDataPoints,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n showNAColor: settings?.showNAColor,\r\n ariaLabel: settings?.ariaLabel,\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseClick: (el: any) => {\r\n updateFilters?.(el.label);\r\n },\r\n detailsOnClick: settings?.detailsOnClick,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n animate: settings?.animate,\r\n };\r\n case 'circlePacking':\r\n return {\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n dimmedOpacity: settings?.dimmedOpacity,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n data: graphData,\r\n colors: settings?.colors as string | string[] | undefined,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n suffix: settings?.suffix,\r\n prefix: settings?.prefix,\r\n sources: settings?.sources,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n colorDomain: settings?.colorDomain,\r\n colorLegendTitle:\r\n Object.keys(settings || {}).indexOf('colorLegendTitle') !== -1\r\n ? settings?.colorLegendTitle\r\n : getValues('color', graphDataConfiguration || [], readableHeader || []),\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n relativeHeight: settings?.relativeHeight,\r\n showLabels: settings?.showLabels,\r\n tooltip: settings?.tooltip,\r\n showColorScale: settings?.showColorScale,\r\n showValues: settings?.showValues,\r\n graphID: settings?.graphID,\r\n highlightedDataPoints: settings?.highlightedDataPoints,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n showNAColor: settings?.showNAColor,\r\n ariaLabel: settings?.ariaLabel,\r\n radius: settings?.radius,\r\n maxRadiusValue: settings?.maxRadiusValue,\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onSeriesMouseClick: (el: any) => {\r\n updateFilters?.(el.label);\r\n },\r\n detailsOnClick: settings?.detailsOnClick,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n animate: settings?.animate,\r\n };\r\n case 'heatMap':\r\n return {\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n data: graphData,\r\n colors: settings?.colors as string[] | undefined,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n scaleType: settings?.scaleType,\r\n colorDomain: settings?.colorDomain as string[] | number[],\r\n showColumnLabels: settings?.showColumnLabels,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n truncateBy: settings?.truncateBy,\r\n colorLegendTitle:\r\n Object.keys(settings || {}).indexOf('colorLegendTitle') !== -1\r\n ? settings?.colorLegendTitle\r\n : getValues('color', graphDataConfiguration || [], readableHeader || []),\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n suffix: settings?.suffix,\r\n prefix: settings?.prefix,\r\n showValues: settings?.showValues,\r\n showRowLabels: settings?.showRowLabels,\r\n relativeHeight: settings?.relativeHeight,\r\n tooltip: settings?.tooltip,\r\n graphID: settings?.graphID,\r\n noDataColor: settings?.noDataColor,\r\n showColorScale: settings?.showColorScale,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n fillContainer: settings?.fillContainer,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n showNAColor: settings?.showNAColor,\r\n ariaLabel: settings?.ariaLabel,\r\n detailsOnClick: settings?.detailsOnClick,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n animate: settings?.animate,\r\n };\r\n case 'stripChart':\r\n return {\r\n customLayers: settings?.customLayers,\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n dimmedOpacity: settings?.dimmedOpacity,\r\n orientation: settings?.orientation,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n data: graphData,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n colors: settings?.colors as string | string[] | undefined,\r\n colorDomain: settings?.colorDomain,\r\n colorLegendTitle:\r\n Object.keys(settings || {}).indexOf('colorLegendTitle') !== -1\r\n ? settings?.colorLegendTitle\r\n : getValues('color', graphDataConfiguration || [], readableHeader || []),\r\n radius: settings?.radius,\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n relativeHeight: settings?.relativeHeight,\r\n tooltip: settings?.tooltip,\r\n highlightedDataPoints: settings?.highlightedDataPoints,\r\n showColorScale: settings?.showColorScale,\r\n graphID: settings?.graphID,\r\n maxValue: settings?.maxValue,\r\n minValue: settings?.minValue,\r\n noOfTicks: settings?.noOfTicks,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n prefix: settings?.prefix,\r\n suffix: settings?.suffix,\r\n stripType: settings?.stripType,\r\n valueColor: settings?.valueColor,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n highlightColor: settings?.highlightColor,\r\n dotOpacity: settings?.dotOpacity,\r\n showNAColor: settings?.showNAColor,\r\n ariaLabel: settings?.ariaLabel,\r\n detailsOnClick: settings?.detailsOnClick,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n animate: settings?.animate,\r\n };\r\n case 'beeSwarmChart':\r\n return {\r\n customLayers: settings?.customLayers,\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n dimmedOpacity: settings?.dimmedOpacity,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n data: graphData,\r\n colors: settings?.colors as string | string[] | undefined,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n showTicks: settings?.showTicks,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n colorDomain: settings?.colorDomain,\r\n colorLegendTitle:\r\n Object.keys(settings || {}).indexOf('colorLegendTitle') !== -1\r\n ? settings?.colorLegendTitle\r\n : getValues('color', graphDataConfiguration || [], readableHeader || []),\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n relativeHeight: settings?.relativeHeight,\r\n showLabels: settings?.showLabels,\r\n showColorScale: settings?.showColorScale,\r\n tooltip: settings?.tooltip,\r\n refValues: settings?.refValues,\r\n graphID: settings?.graphID,\r\n radius: settings?.radius,\r\n maxRadiusValue: settings?.maxRadiusValue,\r\n maxValue: settings?.maxValue,\r\n minValue: settings?.minValue,\r\n highlightedDataPoints: settings?.highlightedDataPoints,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n showNAColor: settings?.showNAColor,\r\n ariaLabel: settings?.ariaLabel,\r\n detailsOnClick: settings?.detailsOnClick,\r\n orientation: settings?.orientation,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n animate: settings?.animate,\r\n };\r\n case 'butterflyChart':\r\n return {\r\n naLabel: settings?.naLabel,\r\n timeline: settings?.timeline,\r\n customLayers: settings?.customLayers,\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n data: graphData,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n leftBarTitle:\r\n Object.keys(settings || {}).indexOf('leftBarTitle') !== -1\r\n ? settings?.leftBarTitle\r\n : getValues('leftBar', graphDataConfiguration || [], readableHeader || []),\r\n rightBarTitle:\r\n Object.keys(settings || {}).indexOf('rightBarTitle') !== -1\r\n ? settings?.rightBarTitle\r\n : getValues('rightBar', graphDataConfiguration || [], readableHeader || []),\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n barColors: settings?.barColors,\r\n relativeHeight: settings?.relativeHeight,\r\n tooltip: settings?.tooltip,\r\n graphID: settings?.graphID,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n barPadding: settings?.barPadding,\r\n truncateBy: settings?.truncateBy,\r\n suffix: settings?.suffix,\r\n prefix: settings?.prefix,\r\n showTicks: settings?.showTicks,\r\n showValues: settings?.showValues,\r\n centerGap: settings?.centerGap,\r\n maxValue: settings?.maxValue,\r\n minValue: settings?.minValue,\r\n showColorScale: settings?.showColorScale,\r\n refValues: settings?.refValues,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n ariaLabel: settings?.ariaLabel,\r\n detailsOnClick: settings?.detailsOnClick,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n animate: settings?.animate,\r\n };\r\n case 'histogram':\r\n return {\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n data: graphData,\r\n colors: settings?.colors,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n barPadding: settings?.barPadding,\r\n showValues: settings?.showValues,\r\n showTicks: settings?.showTicks,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n relativeHeight: settings?.relativeHeight,\r\n showLabels: settings?.showLabels,\r\n maxValue: settings?.maxValue,\r\n tooltip: settings?.tooltip,\r\n refValues: settings?.refValues,\r\n graphID: settings?.graphID,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n numberOfBins: settings?.numberOfBins,\r\n truncateBy: settings?.truncateBy,\r\n donutStrokeWidth: settings?.donutStrokeWidth,\r\n sortData: settings?.sortData,\r\n barGraphLayout: settings?.barGraphLayout,\r\n graphType: settings?.graphType,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n maxBarThickness: settings?.maxBarThickness,\r\n ariaLabel: settings?.ariaLabel,\r\n detailsOnClick: settings?.detailsOnClick,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n };\r\n case 'sparkLine':\r\n return {\r\n customLayers: settings?.customLayers,\r\n theme: settings?.theme,\r\n data: graphData,\r\n curveType: settings?.curveType,\r\n lineColor: settings?.lineColor as string | undefined,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n dateFormat: settings?.dateFormat,\r\n area: settings?.area,\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n relativeHeight: settings?.relativeHeight,\r\n tooltip: settings?.tooltip,\r\n graphID: settings?.graphID,\r\n maxValue: settings?.maxValue,\r\n minValue: settings?.minValue,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n ariaLabel: settings?.ariaLabel,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n };\r\n case 'paretoChart':\r\n return {\r\n naLabel: settings?.naLabel,\r\n customLayers: settings?.customLayers,\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n data: graphData,\r\n showValues: settings?.showValues,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n barTitle:\r\n Object.keys(settings || {}).indexOf('barTitle') !== -1\r\n ? settings?.barTitle\r\n : getValues('barTitle', graphDataConfiguration || [], readableHeader || []),\r\n lineTitle:\r\n Object.keys(settings || {}).indexOf('lineTitle') !== -1\r\n ? settings?.lineTitle\r\n : getValues('lineTitle', graphDataConfiguration || [], readableHeader || []),\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n barColor: settings?.barColor,\r\n curveType: settings?.curveType,\r\n lineColor: settings?.lineColor,\r\n sameAxes: settings?.sameAxes,\r\n relativeHeight: settings?.relativeHeight,\r\n tooltip: settings?.tooltip,\r\n graphID: settings?.graphID,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n barPadding: settings?.barPadding,\r\n truncateBy: settings?.truncateBy,\r\n showLabels: settings?.showLabels,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n ariaLabel: settings?.ariaLabel,\r\n detailsOnClick: settings?.detailsOnClick,\r\n noOfTicks: settings?.noOfTicks,\r\n lineSuffix: settings?.lineSuffix,\r\n barSuffix: settings?.barSuffix,\r\n linePrefix: settings?.lineSuffix,\r\n barPrefix: settings?.barPrefix,\r\n barAxisTitle: settings?.barAxisTitle,\r\n lineAxisTitle: settings?.lineAxisTitle,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n animate: settings?.animate,\r\n };\r\n case 'dataTable':\r\n return {\r\n naLabel: settings?.naLabel,\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n graphTitle: settings?.graphTitle,\r\n sources: settings?.sources,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n graphID: settings?.graphID,\r\n width: settings?.width,\r\n height: settings?.height,\r\n columnData: (settings?.columnData || []) as DataTableColumnDataType[],\r\n data: graphData,\r\n language: settings?.language,\r\n ariaLabel: settings?.ariaLabel,\r\n minWidth: settings?.minWidth,\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n };\r\n case 'statCard':\r\n return {\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n year: settings?.year,\r\n data: graphData,\r\n graphTitle: settings?.graphTitle || '',\r\n graphDescription: settings?.graphDescription,\r\n suffix: settings?.suffix,\r\n prefix: settings?.prefix,\r\n sources: settings?.sources || [],\r\n footNote: settings?.footNote,\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n graphID: settings?.graphID,\r\n aggregationMethod: settings?.aggregationMethod,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n countOnly: settings?.countOnly,\r\n ariaLabel: settings?.ariaLabel,\r\n textBackground: settings?.textBackground,\r\n headingFontSize: settings?.headingFontSize,\r\n centerAlign: settings?.centerAlign,\r\n verticalAlign: settings?.verticalAlign,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n layout: settings?.layout,\r\n };\r\n case 'unitChart':\r\n return {\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n totalNoOfDots: settings?.totalNoOfDots,\r\n gridSize: settings?.gridSize,\r\n unitPadding: settings?.unitPadding,\r\n size: settings?.size,\r\n graphTitle: settings?.graphTitle,\r\n sources: settings?.sources,\r\n colors: settings?.colors as string[] | undefined,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n graphID: settings?.graphID,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n language: settings?.language,\r\n showColorScale: settings?.showColorScale,\r\n showStrokeForWhiteDots: settings?.showStrokeForWhiteDots,\r\n note: settings?.note,\r\n data: graphData,\r\n width: settings?.width,\r\n height: settings?.height,\r\n minHeight: settings?.minHeight,\r\n relativeHeight: settings?.relativeHeight,\r\n ariaLabel: settings?.ariaLabel,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n animate: settings?.animate,\r\n };\r\n case 'sankeyChart':\r\n return {\r\n customLayers: settings?.customLayers,\r\n precision: settings?.precision,\r\n theme: settings?.theme,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n data: graphData,\r\n graphTitle: settings?.graphTitle,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n width: settings?.width,\r\n height: settings?.height,\r\n sources: settings?.sources,\r\n showLabels: settings?.showLabels,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n truncateBy: settings?.truncateBy,\r\n padding: settings?.padding,\r\n backgroundColor: settings?.backgroundColor,\r\n tooltip: settings?.tooltip,\r\n suffix: settings?.suffix,\r\n prefix: settings?.prefix,\r\n relativeHeight: settings?.relativeHeight,\r\n showValues: settings?.showValues,\r\n graphID: settings?.graphID,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n fillContainer: settings?.fillContainer,\r\n language: settings?.language,\r\n minHeight: settings?.minHeight,\r\n ariaLabel: settings?.ariaLabel,\r\n sourceColors: settings?.sourceColors,\r\n targetColors: settings?.targetColors,\r\n sourceColorDomain: settings?.sourceColorDomain,\r\n targetColorDomain: settings?.targetColorDomain,\r\n nodePadding: settings?.nodePadding,\r\n nodeWidth: settings?.nodeWidth,\r\n highlightedSourceDataPoints: settings?.highlightedSourceDataPoints,\r\n highlightedTargetDataPoints: settings?.highlightedTargetDataPoints,\r\n defaultLinkOpacity: settings?.defaultLinkOpacity,\r\n sourceTitle: settings?.sourceTitle,\r\n targetTitle: settings?.targetTitle,\r\n sortNodes: settings?.sortNodes,\r\n detailsOnClick: settings?.detailsOnClick,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n animate: settings?.animate,\r\n };\r\n case 'dataCards':\r\n return {\r\n theme: settings?.theme,\r\n graphTitle: settings?.graphTitle,\r\n sources: settings?.sources,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n graphID: settings?.graphID,\r\n width: settings?.width,\r\n height: settings?.height,\r\n columnData: (settings?.columnData || []) as DataTableColumnDataType[],\r\n data: graphData,\r\n language: settings?.language,\r\n ariaLabel: settings?.ariaLabel,\r\n cardTemplate: settings?.cardTemplate,\r\n cardBackgroundColor: settings?.cardBackgroundColor,\r\n cardFilters: settings?.cardFilters || [],\r\n cardSortingOptions: settings?.cardSortingOptions,\r\n cardSearchColumns: settings?.cardSearchColumns,\r\n cardMinWidth: settings?.cardMinWidth,\r\n backgroundColor: settings?.backgroundColor,\r\n padding: settings?.padding,\r\n detailsOnClick: settings?.detailsOnClick,\r\n allowDataDownloadOnDetail: settings?.allowDataDownloadOnDetail,\r\n noOfItemsInAPage: settings?.noOfItemsInAPage,\r\n uiMode: settings?.uiMode,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n };\r\n case 'radarChart':\r\n return {\r\n customLayers: settings?.customLayers,\r\n precision: settings?.precision,\r\n graphTitle: settings?.graphTitle,\r\n dimmedOpacity: settings?.dimmedOpacity,\r\n graphDescription: settings?.graphDescription,\r\n footNote: settings?.footNote,\r\n sources: settings?.sources,\r\n ariaLabel: settings?.ariaLabel,\r\n colors: settings?.colors,\r\n colorDomain: settings?.colorDomain,\r\n colorLegendTitle: settings?.colorLegendTitle,\r\n backgroundColor: settings?.backgroundColor,\r\n styles: settings?.styles,\r\n classNames: settings?.classNames,\r\n width: settings?.width,\r\n height: settings?.height,\r\n minHeight: settings?.minHeight,\r\n relativeHeight: settings?.relativeHeight,\r\n padding: settings?.padding,\r\n radius: settings?.radius,\r\n leftMargin: settings?.leftMargin,\r\n rightMargin: settings?.rightMargin,\r\n topMargin: settings?.topMargin,\r\n bottomMargin: settings?.bottomMargin,\r\n maxValue: settings?.maxValue,\r\n minValue: settings?.minValue,\r\n showValues: settings?.showValues,\r\n showDots: settings?.showDots,\r\n strokeWidth: settings?.strokeWidth,\r\n fillShape: settings?.fillShape,\r\n noOfTicks: settings?.noOfTicks,\r\n showColorScale: settings?.showColorScale,\r\n showNAColor: settings?.showNAColor,\r\n highlightedLines: settings?.highlightedLines,\r\n axisLabels: settings?.axisLabels,\r\n curveType: settings?.curveType,\r\n resetSelectionOnDoubleClick: settings?.resetSelectionOnDoubleClick,\r\n graphDownload: settings?.graphDownload,\r\n dataDownload: settings?.dataDownload,\r\n tooltip: settings?.tooltip,\r\n detailsOnClick: settings?.detailsOnClick,\r\n language: settings?.language,\r\n theme: settings?.theme,\r\n graphID: settings?.graphID,\r\n animate: settings?.animate,\r\n };\r\n default:\r\n return {};\r\n }\r\n };\r\n const GraphComponent = graphComponents[graph];\r\n const graphProps = getGraphProps(graph);\r\n return (\r\n <div\r\n className={`grow my-0 ${\r\n graph !== 'statCard' ? 'mx-auto' : 'mx-0'\r\n } flex flex-col h-inherit ${settings?.width ? 'w-fit' : 'w-full'} ${\r\n graph !== 'unitChart' && graph !== 'statCard' ? 'justify-center' : 'justify-start'\r\n } ${settings?.theme || 'light'}`}\r\n style={{ minHeight: 'inherit' }}\r\n >\r\n {GraphComponent ? (\r\n <GraphComponent {...graphProps} />\r\n ) : (\r\n <P\r\n size='sm'\r\n marginBottom='none'\r\n className='p-2 text-center text-accent-dark-red dark:text-accent-red'\r\n >\r\n {`Invalid chart type: ${graph}`}\r\n </P>\r\n )}\r\n </div>\r\n );\r\n}\r\n\r\nexport default GraphEl;\r\n"],"names":["GraphEl","props","settings","graph","graphData","debugMode","graphDataConfiguration","readableHeader","updateFilters","jsx","P","graphComponents","SimpleBarGraph","BulletChart","GroupedBarGraph","StackedBarGraph","SimpleLineChart","DualAxisLineChart","MultiLineChart","MultiLineAltChart","AreaChart","ChoroplethMap","BiVariateChoroplethMap","DotDensityMap","DonutChart","SlopeChart","ScatterPlot","DumbbellChart","TreeMapGraph","CirclePackingGraph","HeatMap","StripChart","BeeSwarmChart","ButterflyChart","Histogram","SparkLine","ParetoChart","DataTable","StatCardFromData","UnitChart","DifferenceLineChart","SankeyChart","LineChartWithConfidenceInterval","DataCards","RadarChart","getGraphProps","graphType","getValues","el","GraphComponent","graphProps"],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index-CHPV5EwG-DDoeWRVt.cjs"),d=require("react"),ee=require("./index-Ds0uHjK9.cjs"),N=require("./index-B0rbzOoC.cjs"),c=require("./checkIfMultiple-D5ysrI7G.cjs"),ae=require("./Spinner-DA6Z5E4n.cjs"),f=require("./DropdownSelect-0I2QxaVy.cjs"),v=require("./fetchAndParseData-DmgQtB9n.cjs"),te=require("./Colors.cjs"),W=require("./transformDataForAggregation-BUGJnson.cjs"),Z=require("./getUniqValue-CHqgSss5.cjs"),le=require("./GraphHeader.cjs"),re=require("./GraphFooter.cjs"),z=require("./filterData-DN6py7y_.cjs"),oe=require("./ColorLegend.cjs"),ne=require("./checkIfNullOrUndefined-BCW3Y1ML.cjs"),B=require("./index-D9h2WYDS.cjs");function ie(J){const{graphSettings:a,dataSettings:n,filters:T,graphType:A,dataTransform:D,graphDataConfiguration:s,noOfColumns:E,columnGridBy:I,dataFilters:$,showCommonColorScale:k,minGraphHeight:K,minGraphWidth:q,debugMode:w,dataSelectionOptions:F,advancedDataSelectionOptions:O,readableHeader:Q,noOfFiltersPerRow:g=4,uiMode:p="normal",theme:H="light"}=J,[C,X]=d.useState(void 0),[R,Y]=d.useState(void 0),[b,_]=d.useState([]),M=d.useRef(null),[m,x]=d.useState(s),[j,L]=d.useState([]),[h,S]=d.useState({}),V=d.useMemo(()=>({ignoreCase:!0,ignoreAccents:!0,trim:!0}),[]),U=d.useMemo(()=>!R||j.length===0?R:R.filter(u=>j.every(t=>t.value&&N.flattenDeep([t.value]).length>0?ee.intersection(N.flattenDeep([u[t.filter]]),N.flattenDeep([t.value]).map(l=>l.value)).length>0:!0)),[j,R]);d.useEffect(()=>{X(U)},[U]);const P=d.useCallback(async()=>{if(n)try{const u=await(n.dataURL?typeof n.dataURL=="string"?n.fileType==="json"?v.fetchAndParseJSON(n.dataURL,n.columnsToArray,n.dataTransformation,w):n.fileType==="api"?v.fetchAndTransformDataFromAPI(n.dataURL,n.apiHeaders,n.columnsToArray,n.dataTransformation,w):v.fetchAndParseCSV(n.dataURL,n.dataTransformation,n.columnsToArray,w,n.delimiter,!0):v.fetchAndParseMultipleDataSources(n.dataURL,n.idColumnTitle):v.transformColumnsToArray(n.data,n.columnsToArray));Y(u);const t=Z.getUniqValue(u,I);_(t);const l=(T||[]).map(o=>({filter:o.column,label:o.label||`Filter by ${o.column}`,singleSelect:o.singleSelect,clearable:o.clearable,defaultValue:B.transformDefaultValue(o.defaultValue),value:B.transformDefaultValue(o.defaultValue),availableValues:Z.getUniqValue(u,o.column).filter(i=>!o.excludeValues?.includes(`${i}`)).map(i=>({value:i,label:i})),allowSelectAll:o.allowSelectAll,width:o.width}));L(l)}catch(e){console.error("Data fetching error:",e)}},[n,w,I,T]);d.useEffect(()=>{P()},[P]),d.useEffect(()=>{x(s)},[s]);const G=d.useCallback((e,u)=>{L(t=>t.map(l=>l.filter===e?{...l,value:u}:l))},[]);return r.jsxRuntimeExports.jsx("div",{className:`${H||a?.theme||"light"} flex ${a?.width?"w-fit grow-0":"w-full grow"}`,dir:a?.language==="he"||a?.language==="ar"?"rtl":void 0,children:r.jsxRuntimeExports.jsx("div",{className:`${a?.backgroundColor?a?.backgroundColor===!0?"bg-primary-gray-200 dark:bg-primary-gray-650 ":"":"bg-transparent "}ml-auto mr-auto flex flex-col grow h-inherit ${a?.language||"en"}`,style:{...a?.backgroundColor&&a?.backgroundColor!==!0?{backgroundColor:a?.backgroundColor}:{}},id:a?.graphID,ref:M,"aria-label":a?.ariaLabel||`${a?.graphTitle?`The graph shows ${a?.graphTitle}. `:""}This is a gridded chart.${a?.graphDescription?` ${a?.graphDescription}`:""}`,children:r.jsxRuntimeExports.jsx("div",{style:{padding:a?.backgroundColor?a?.padding||"1rem":a?.padding||0,flexGrow:1,display:"flex"},children:r.jsxRuntimeExports.jsxs("div",{className:"flex flex-col w-full gap-4 grow justify-between",children:[h?.graphTitle||h?.graphDescription||a?.graphTitle||a?.graphDescription||a?.graphDownload||a?.dataDownload?r.jsxRuntimeExports.jsx(le.GraphHeader,{styles:{title:h?.styles?.title||a?.styles?.title,description:h?.styles?.description||a?.styles?.description},classNames:{title:h?.classNames?.title||a?.classNames?.title,description:h?.classNames?.description||a?.classNames?.description},graphTitle:h?.graphTitle||a?.graphTitle,graphDescription:h?.graphDescription||a?.graphDescription,width:h?.width||a?.width,graphDownload:a?.graphDownload?M.current:void 0,dataDownload:a?.dataDownload&&C&&C.length>0?C:null}):null,C&&b.length>0?r.jsxRuntimeExports.jsxs(r.jsxRuntimeExports.Fragment,{children:[j.length!==0||(F||[]).length!==0||(O||[]).length!==0?r.jsxRuntimeExports.jsxs("div",{style:{display:"flex",gap:"1rem",flexWrap:"wrap",alignItems:"flex-start",width:"100%"},children:[O?.map((e,u)=>r.jsxRuntimeExports.jsxs("div",{style:{width:e.width||`calc(${100/g}% - ${(g-1)/g}rem)`,flexGrow:1,flexShrink:e.ui!=="radio"?0:1,minWidth:"240px"},children:[r.jsxRuntimeExports.jsx(c.f,{className:"mb-2",children:e.label||"Graph by"}),e.ui!=="radio"?r.jsxRuntimeExports.jsx(f.Za,{options:e.options.map(t=>({...t,value:t.label})),isClearable:!1,isSearchable:!0,variant:p,controlShouldRenderValue:!0,defaultValue:e.defaultValue?{...e.defaultValue,value:e.defaultValue?.label}:{...e.options[0],value:e.options[0].label},onChange:t=>{S(t?.graphSettings||{}),x(t?.dataConfiguration)}}):r.jsxRuntimeExports.jsx(c.fe,{defaultValue:e.defaultValue?.label||e.options[0].label,variant:p,onValueChange:t=>{const l=e.options[e.options.findIndex(o=>o.label===t)];S(l.graphSettings||{}),x(l.dataConfiguration)},children:e.options.map((t,l)=>r.jsxRuntimeExports.jsx(c.ve,{label:t.label,value:t.label},l))})]},u)),F?.map((e,u)=>r.jsxRuntimeExports.jsxs("div",{style:{width:e.width||`calc(${100/g}% - ${(g-1)/g}rem)`,flexGrow:1,flexShrink:e.ui!=="radio"?0:1,minWidth:"240px"},children:[r.jsxRuntimeExports.jsx(c.f,{className:"mb-2",children:e.label||`Visualize ${e.chartConfigId} by`}),c.checkIfMultiple(e.chartConfigId,m||[])?e.ui!=="radio"?r.jsxRuntimeExports.jsx(f.Za,{options:e.allowedColumnIds,isMulti:!0,variant:p,isSearchable:!0,controlShouldRenderValue:!0,defaultValue:s?s[s.findIndex(t=>t.chartConfigId===e.chartConfigId)].columnId.map(t=>e.allowedColumnIds[e.allowedColumnIds.findIndex(l=>l.value===t)]):void 0,filterOption:f.Hu(V),onChange:t=>{const l={columnId:t.map(i=>i.value),chartConfigId:e.chartConfigId},o=m?.map(i=>i.chartConfigId===l.chartConfigId?l:i);x(o)},isRtl:a?.language==="ar"||a?.language==="he"}):r.jsxRuntimeExports.jsx(c.w,{variant:p,defaultValue:s?s[s.findIndex(t=>t.chartConfigId===e.chartConfigId)].columnId.map(t=>e.allowedColumnIds[e.allowedColumnIds.findIndex(l=>l.value===t)]).map(t=>t.value):[],onValueChange:t=>{const l={columnId:t||[],chartConfigId:e.chartConfigId},o=m?.map(i=>i.chartConfigId===l.chartConfigId?l:i);x(o)},children:e.allowedColumnIds.map((t,l)=>r.jsxRuntimeExports.jsx(c.G,{label:t.label,value:t.label},l))}):e.ui!=="radio"?r.jsxRuntimeExports.jsx(f.Za,{options:e.allowedColumnIds,isClearable:!1,isSearchable:!0,variant:p,defaultValue:s?e.allowedColumnIds[e.allowedColumnIds.findIndex(t=>t.value===s[s.findIndex(l=>l.chartConfigId===e.chartConfigId)].columnId)]:void 0,controlShouldRenderValue:!0,onChange:t=>{const l={columnId:t?.value,chartConfigId:e.chartConfigId},o=m?.map(i=>i.chartConfigId===l.chartConfigId?l:i);S(t?.graphSettings||{}),x(o)}}):r.jsxRuntimeExports.jsx(c.fe,{variant:p,defaultValue:s?e.allowedColumnIds[e.allowedColumnIds.findIndex(t=>t.value===s[s.findIndex(l=>l.chartConfigId===e.chartConfigId)].columnId)].label:"",onValueChange:t=>{const l=e.allowedColumnIds[e.allowedColumnIds.findIndex(y=>y.label===t)],o={columnId:l.value,chartConfigId:e.chartConfigId},i=m?.map(y=>y.chartConfigId===o.chartConfigId?o:y);S(l.graphSettings||{}),x(i)},children:e.allowedColumnIds.map((t,l)=>r.jsxRuntimeExports.jsx(c.ve,{label:t.label,value:t.label},l))})]},u)),j?.map((e,u)=>r.jsxRuntimeExports.jsxs("div",{style:{width:e.width||`calc(${100/g}% - ${(g-1)/g}rem)`,flexGrow:1,flexShrink:0,flexWrap:"wrap"},children:[r.jsxRuntimeExports.jsx(c.f,{className:"mb-2",children:e.label}),e.singleSelect?r.jsxRuntimeExports.jsx(f.Za,{variant:p,options:e.availableValues,isClearable:e.clearable===void 0?!0:e.clearable,isRtl:a?.language==="ar"||a?.language==="he",isSearchable:!0,controlShouldRenderValue:!0,filterOption:f.Hu(V),onChange:t=>{G(e.filter,t)},defaultValue:e.defaultValue}):r.jsxRuntimeExports.jsxs(r.jsxRuntimeExports.Fragment,{children:[r.jsxRuntimeExports.jsx(f.Za,{variant:p,options:e.availableValues,isMulti:!0,isClearable:e.clearable===void 0?!0:e.clearable,isSearchable:!0,controlShouldRenderValue:!0,filterOption:f.Hu(V),onChange:t=>{G(e.filter,t)},defaultValue:e.defaultValue,isRtl:a?.language==="ar"||a?.language==="he"}),e.allowSelectAll?r.jsxRuntimeExports.jsx("button",{className:"bg-transparent border-0 p-0 mt-2 cursor-pointer text-primary-blue-600 dark:text-primary-blue-400",type:"button",onClick:()=>{G(e.filter,e.availableValues)},children:"Select all options"}):null]})]},u))]}):null,k!==!1&&a?.showColorScale!==!1?r.jsxRuntimeExports.jsx(oe.ColorLegend,{width:a?.width,colorLegendTitle:a?.colorLegendTitle,colors:a?.colors||a?.lineColors||te.Colors[a?.theme||"light"].categoricalColors.colors,colorDomain:a?.colorDomain||a?.labels||[],showNAColor:a?.showNAColor===void 0||a?.showNAColor===null?!0:a?.showNAColor}):null,r.jsxRuntimeExports.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:"1rem",flexDirection:a?.language==="ar"||a?.language==="he"?"row-reverse":"row",justifyContent:"center"},children:b.map((e,u)=>r.jsxRuntimeExports.jsx("div",{style:{width:`calc(${100/(E||Math.min(4,b.length||0))}% - ${((E||Math.min(4,b.length||0))-1)/(E||Math.min(4,b.length||0))}rem)`,minWidth:ne.checkIfNullOrUndefined(q)?"280px":`${q}px`},children:r.jsxRuntimeExports.jsx(c.GraphEl,{graph:A,graphDataConfiguration:m,graphData:W.transformDataForGraph(D?W.transformDataForAggregation(z.filterData(C,$||[]).filter(t=>t[I]===e),D.keyColumn,D.aggregationColumnsSetting):z.filterData(C,$||[]).filter(t=>t[I]===e),A,m)||[],debugMode:w,settings:{...a||{},...h,theme:a?.theme||H,width:void 0,height:void 0,relativeHeight:a?.relativeHeight||.67,minHeight:K,graphTitle:`${e}`,graphDescription:void 0,graphDownload:!1,dataDownload:!1,backgroundColor:void 0,padding:"0",footNote:void 0,sources:void 0,showColorScale:a?.showColorScale===!1?!1:k===!1},readableHeader:Q||[]})},u))})]}):r.jsxRuntimeExports.jsx("div",{className:"w-full flex justify-center p-4",children:r.jsxRuntimeExports.jsx(ae.y,{})}),a?.sources||a?.footNote?r.jsxRuntimeExports.jsx(re.GraphFooter,{styles:{footnote:a?.styles?.footnote,source:a?.styles?.source},classNames:{footnote:a?.classNames?.footnote,source:a?.classNames?.source},sources:a?.sources,footNote:a?.footNote,width:a?.width}):null]})})})})}exports.GriddedGraphs=ie;
1
+ "use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const r=require("./index-CHPV5EwG-DDoeWRVt.cjs"),d=require("react"),ee=require("./index-Ds0uHjK9.cjs"),N=require("./index-B0rbzOoC.cjs"),h=require("./checkIfMultiple-Do4kADNr.cjs"),ae=require("./Spinner-DA6Z5E4n.cjs"),f=require("./DropdownSelect-0I2QxaVy.cjs"),te=require("./GraphEl-B6SoGRFW.cjs"),v=require("./fetchAndParseData-DmgQtB9n.cjs"),le=require("./Colors.cjs"),W=require("./transformDataForAggregation-Du-Hei-W.cjs"),Z=require("./getUniqValue-CHqgSss5.cjs"),re=require("./GraphHeader.cjs"),oe=require("./GraphFooter.cjs"),z=require("./filterData-DN6py7y_.cjs"),ne=require("./ColorLegend.cjs"),ie=require("./checkIfNullOrUndefined-BCW3Y1ML.cjs"),B=require("./transformDataForSelect-YmStusCI.cjs");function se(J){const{graphSettings:a,dataSettings:n,filters:T,graphType:A,dataTransform:D,graphDataConfiguration:s,noOfColumns:E,columnGridBy:I,dataFilters:$,showCommonColorScale:k,minGraphHeight:K,minGraphWidth:q,debugMode:w,dataSelectionOptions:F,advancedDataSelectionOptions:O,readableHeader:Q,noOfFiltersPerRow:g=4,uiMode:p="normal",theme:H="light"}=J,[C,X]=d.useState(void 0),[S,Y]=d.useState(void 0),[b,_]=d.useState([]),M=d.useRef(null),[m,x]=d.useState(s),[j,L]=d.useState([]),[c,R]=d.useState({}),V=d.useMemo(()=>({ignoreCase:!0,ignoreAccents:!0,trim:!0}),[]),U=d.useMemo(()=>!S||j.length===0?S:S.filter(u=>j.every(t=>t.value&&N.flattenDeep([t.value]).length>0?ee.intersection(N.flattenDeep([u[t.filter]]),N.flattenDeep([t.value]).map(l=>l.value)).length>0:!0)),[j,S]);d.useEffect(()=>{X(U)},[U]);const P=d.useCallback(async()=>{if(n)try{const u=await(n.dataURL?typeof n.dataURL=="string"?n.fileType==="json"?v.fetchAndParseJSON(n.dataURL,n.columnsToArray,n.dataTransformation,w):n.fileType==="api"?v.fetchAndTransformDataFromAPI(n.dataURL,n.apiHeaders,n.columnsToArray,n.dataTransformation,w):v.fetchAndParseCSV(n.dataURL,n.dataTransformation,n.columnsToArray,w,n.delimiter,!0):v.fetchAndParseMultipleDataSources(n.dataURL,n.idColumnTitle):v.transformColumnsToArray(n.data,n.columnsToArray));Y(u);const t=Z.getUniqValue(u,I);_(t);const l=(T||[]).map(o=>({filter:o.column,label:o.label||`Filter by ${o.column}`,singleSelect:o.singleSelect,clearable:o.clearable,defaultValue:B.transformDefaultValue(o.defaultValue),value:B.transformDefaultValue(o.defaultValue),availableValues:Z.getUniqValue(u,o.column).filter(i=>!o.excludeValues?.includes(`${i}`)).map(i=>({value:i,label:i})),allowSelectAll:o.allowSelectAll,width:o.width}));L(l)}catch(e){console.error("Data fetching error:",e)}},[n,w,I,T]);d.useEffect(()=>{P()},[P]),d.useEffect(()=>{x(s)},[s]);const G=d.useCallback((e,u)=>{L(t=>t.map(l=>l.filter===e?{...l,value:u}:l))},[]);return r.jsxRuntimeExports.jsx("div",{className:`${H||a?.theme||"light"} flex ${a?.width?"w-fit grow-0":"w-full grow"}`,dir:a?.language==="he"||a?.language==="ar"?"rtl":void 0,children:r.jsxRuntimeExports.jsx("div",{className:`${a?.backgroundColor?a?.backgroundColor===!0?"bg-primary-gray-200 dark:bg-primary-gray-650 ":"":"bg-transparent "}ml-auto mr-auto flex flex-col grow h-inherit ${a?.language||"en"}`,style:{...a?.backgroundColor&&a?.backgroundColor!==!0?{backgroundColor:a?.backgroundColor}:{}},id:a?.graphID,ref:M,"aria-label":a?.ariaLabel||`${a?.graphTitle?`The graph shows ${a?.graphTitle}. `:""}This is a gridded chart.${a?.graphDescription?` ${a?.graphDescription}`:""}`,children:r.jsxRuntimeExports.jsx("div",{style:{padding:a?.backgroundColor?a?.padding||"1rem":a?.padding||0,flexGrow:1,display:"flex"},children:r.jsxRuntimeExports.jsxs("div",{className:"flex flex-col w-full gap-4 grow justify-between",children:[c?.graphTitle||c?.graphDescription||a?.graphTitle||a?.graphDescription||a?.graphDownload||a?.dataDownload?r.jsxRuntimeExports.jsx(re.GraphHeader,{styles:{title:c?.styles?.title||a?.styles?.title,description:c?.styles?.description||a?.styles?.description},classNames:{title:c?.classNames?.title||a?.classNames?.title,description:c?.classNames?.description||a?.classNames?.description},graphTitle:c?.graphTitle||a?.graphTitle,graphDescription:c?.graphDescription||a?.graphDescription,width:c?.width||a?.width,graphDownload:a?.graphDownload?M.current:void 0,dataDownload:a?.dataDownload&&C&&C.length>0?C:null}):null,C&&b.length>0?r.jsxRuntimeExports.jsxs(r.jsxRuntimeExports.Fragment,{children:[j.length!==0||(F||[]).length!==0||(O||[]).length!==0?r.jsxRuntimeExports.jsxs("div",{style:{display:"flex",gap:"1rem",flexWrap:"wrap",alignItems:"flex-start",width:"100%"},children:[O?.map((e,u)=>r.jsxRuntimeExports.jsxs("div",{style:{width:e.width||`calc(${100/g}% - ${(g-1)/g}rem)`,flexGrow:1,flexShrink:e.ui!=="radio"?0:1,minWidth:"240px"},children:[r.jsxRuntimeExports.jsx(h.f,{className:"mb-2",children:e.label||"Graph by"}),e.ui!=="radio"?r.jsxRuntimeExports.jsx(f.Za,{options:e.options.map(t=>({...t,value:t.label})),isClearable:!1,isSearchable:!0,variant:p,controlShouldRenderValue:!0,defaultValue:e.defaultValue?{...e.defaultValue,value:e.defaultValue?.label}:{...e.options[0],value:e.options[0].label},onChange:t=>{R(t?.graphSettings||{}),x(t?.dataConfiguration)}}):r.jsxRuntimeExports.jsx(h.fe,{defaultValue:e.defaultValue?.label||e.options[0].label,variant:p,onValueChange:t=>{const l=e.options[e.options.findIndex(o=>o.label===t)];R(l.graphSettings||{}),x(l.dataConfiguration)},children:e.options.map((t,l)=>r.jsxRuntimeExports.jsx(h.ve,{label:t.label,value:t.label},l))})]},u)),F?.map((e,u)=>r.jsxRuntimeExports.jsxs("div",{style:{width:e.width||`calc(${100/g}% - ${(g-1)/g}rem)`,flexGrow:1,flexShrink:e.ui!=="radio"?0:1,minWidth:"240px"},children:[r.jsxRuntimeExports.jsx(h.f,{className:"mb-2",children:e.label||`Visualize ${e.chartConfigId} by`}),h.checkIfMultiple(e.chartConfigId,m||[])?e.ui!=="radio"?r.jsxRuntimeExports.jsx(f.Za,{options:e.allowedColumnIds,isMulti:!0,variant:p,isSearchable:!0,controlShouldRenderValue:!0,defaultValue:s?s[s.findIndex(t=>t.chartConfigId===e.chartConfigId)].columnId.map(t=>e.allowedColumnIds[e.allowedColumnIds.findIndex(l=>l.value===t)]):void 0,filterOption:f.Hu(V),onChange:t=>{const l={columnId:t.map(i=>i.value),chartConfigId:e.chartConfigId},o=m?.map(i=>i.chartConfigId===l.chartConfigId?l:i);x(o)},isRtl:a?.language==="ar"||a?.language==="he"}):r.jsxRuntimeExports.jsx(h.w,{variant:p,defaultValue:s?s[s.findIndex(t=>t.chartConfigId===e.chartConfigId)].columnId.map(t=>e.allowedColumnIds[e.allowedColumnIds.findIndex(l=>l.value===t)]).map(t=>t.value):[],onValueChange:t=>{const l={columnId:t||[],chartConfigId:e.chartConfigId},o=m?.map(i=>i.chartConfigId===l.chartConfigId?l:i);x(o)},children:e.allowedColumnIds.map((t,l)=>r.jsxRuntimeExports.jsx(h.G,{label:t.label,value:t.label},l))}):e.ui!=="radio"?r.jsxRuntimeExports.jsx(f.Za,{options:e.allowedColumnIds,isClearable:!1,isSearchable:!0,variant:p,defaultValue:s?e.allowedColumnIds[e.allowedColumnIds.findIndex(t=>t.value===s[s.findIndex(l=>l.chartConfigId===e.chartConfigId)].columnId)]:void 0,controlShouldRenderValue:!0,onChange:t=>{const l={columnId:t?.value,chartConfigId:e.chartConfigId},o=m?.map(i=>i.chartConfigId===l.chartConfigId?l:i);R(t?.graphSettings||{}),x(o)}}):r.jsxRuntimeExports.jsx(h.fe,{variant:p,defaultValue:s?e.allowedColumnIds[e.allowedColumnIds.findIndex(t=>t.value===s[s.findIndex(l=>l.chartConfigId===e.chartConfigId)].columnId)].label:"",onValueChange:t=>{const l=e.allowedColumnIds[e.allowedColumnIds.findIndex(y=>y.label===t)],o={columnId:l.value,chartConfigId:e.chartConfigId},i=m?.map(y=>y.chartConfigId===o.chartConfigId?o:y);R(l.graphSettings||{}),x(i)},children:e.allowedColumnIds.map((t,l)=>r.jsxRuntimeExports.jsx(h.ve,{label:t.label,value:t.label},l))})]},u)),j?.map((e,u)=>r.jsxRuntimeExports.jsxs("div",{style:{width:e.width||`calc(${100/g}% - ${(g-1)/g}rem)`,flexGrow:1,flexShrink:0,flexWrap:"wrap"},children:[r.jsxRuntimeExports.jsx(h.f,{className:"mb-2",children:e.label}),e.singleSelect?r.jsxRuntimeExports.jsx(f.Za,{variant:p,options:e.availableValues,isClearable:e.clearable===void 0?!0:e.clearable,isRtl:a?.language==="ar"||a?.language==="he",isSearchable:!0,controlShouldRenderValue:!0,filterOption:f.Hu(V),onChange:t=>{G(e.filter,t)},defaultValue:e.defaultValue}):r.jsxRuntimeExports.jsxs(r.jsxRuntimeExports.Fragment,{children:[r.jsxRuntimeExports.jsx(f.Za,{variant:p,options:e.availableValues,isMulti:!0,isClearable:e.clearable===void 0?!0:e.clearable,isSearchable:!0,controlShouldRenderValue:!0,filterOption:f.Hu(V),onChange:t=>{G(e.filter,t)},defaultValue:e.defaultValue,isRtl:a?.language==="ar"||a?.language==="he"}),e.allowSelectAll?r.jsxRuntimeExports.jsx("button",{className:"bg-transparent border-0 p-0 mt-2 cursor-pointer text-primary-blue-600 dark:text-primary-blue-400",type:"button",onClick:()=>{G(e.filter,e.availableValues)},children:"Select all options"}):null]})]},u))]}):null,k!==!1&&a?.showColorScale!==!1?r.jsxRuntimeExports.jsx(ne.ColorLegend,{width:a?.width,colorLegendTitle:a?.colorLegendTitle,colors:a?.colors||a?.lineColors||le.Colors[a?.theme||"light"].categoricalColors.colors,colorDomain:a?.colorDomain||a?.labels||[],showNAColor:a?.showNAColor===void 0||a?.showNAColor===null?!0:a?.showNAColor}):null,r.jsxRuntimeExports.jsx("div",{style:{display:"flex",flexWrap:"wrap",gap:"1rem",flexDirection:a?.language==="ar"||a?.language==="he"?"row-reverse":"row",justifyContent:"center"},children:b.map((e,u)=>r.jsxRuntimeExports.jsx("div",{style:{width:`calc(${100/(E||Math.min(4,b.length||0))}% - ${((E||Math.min(4,b.length||0))-1)/(E||Math.min(4,b.length||0))}rem)`,minWidth:ie.checkIfNullOrUndefined(q)?"280px":`${q}px`},children:r.jsxRuntimeExports.jsx(te.GraphEl,{graph:A,graphDataConfiguration:m,graphData:W.transformDataForGraph(D?W.transformDataForAggregation(z.filterData(C,$||[]).filter(t=>t[I]===e),D.keyColumn,D.aggregationColumnsSetting):z.filterData(C,$||[]).filter(t=>t[I]===e),A,m)||[],debugMode:w,settings:{...a||{},...c,theme:a?.theme||H,width:void 0,height:void 0,relativeHeight:a?.relativeHeight||.67,minHeight:K,graphTitle:`${e}`,graphDescription:void 0,graphDownload:!1,dataDownload:!1,backgroundColor:void 0,padding:"0",footNote:void 0,sources:void 0,showColorScale:a?.showColorScale===!1?!1:k===!1},readableHeader:Q||[]})},u))})]}):r.jsxRuntimeExports.jsx("div",{className:"w-full flex justify-center p-4",children:r.jsxRuntimeExports.jsx(ae.y,{})}),a?.sources||a?.footNote?r.jsxRuntimeExports.jsx(oe.GraphFooter,{styles:{footnote:a?.styles?.footnote,source:a?.styles?.source},classNames:{footnote:a?.classNames?.footnote,source:a?.classNames?.source},sources:a?.sources,footNote:a?.footNote,width:a?.width}):null]})})})})}exports.GriddedGraphs=se;
2
2
  //# sourceMappingURL=GriddedGraphs.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"GriddedGraphs.cjs","sources":["../src/Components/Dashboard/GriddedGraphs.tsx"],"sourcesContent":["import { useCallback, useEffect, useMemo, useRef, useState } from 'react';\r\nimport intersection from 'lodash.intersection';\r\nimport flattenDeep from 'lodash.flattendeep';\r\nimport { CheckboxGroup, CheckboxGroupItem } from '@undp/design-system-react/CheckboxGroup';\r\nimport { Spinner } from '@undp/design-system-react/Spinner';\r\nimport { RadioGroup, RadioGroupItem } from '@undp/design-system-react/RadioGroup';\r\nimport { createFilter, DropdownSelect } from '@undp/design-system-react/DropdownSelect';\r\nimport { Label } from '@undp/design-system-react/Label';\r\n\r\nimport GraphEl from './GraphEl';\r\n\r\nimport {\r\n AdvancedDataSelectionDataType,\r\n AggregationSettingsDataType,\r\n DataFilterDataType,\r\n DataSelectionDataType,\r\n DataSettingsDataType,\r\n FilterSettingsDataType,\r\n FilterUiSettingsDataType,\r\n GraphConfigurationDataType,\r\n GraphSettingsDataType,\r\n GraphType,\r\n} from '@/Types';\r\nimport {\r\n fetchAndParseCSV,\r\n fetchAndParseJSON,\r\n fetchAndParseMultipleDataSources,\r\n fetchAndTransformDataFromAPI,\r\n} from '@/Utils/fetchAndParseData';\r\nimport { Colors } from '@/Components/ColorPalette';\r\nimport { transformColumnsToArray } from '@/Utils/transformData/transformColumnsToArray';\r\nimport { transformDataForGraph } from '@/Utils/transformData/transformDataForGraph';\r\nimport { getUniqValue } from '@/Utils/getUniqValue';\r\nimport { transformDataForAggregation } from '@/Utils/transformData/transformDataForAggregation';\r\nimport { GraphHeader } from '@/Components/Elements/GraphHeader';\r\nimport { GraphFooter } from '@/Components/Elements/GraphFooter';\r\nimport { filterData } from '@/Utils/transformData/filterData';\r\nimport { ColorLegend } from '@/Components/Elements/ColorLegend';\r\nimport { checkIfNullOrUndefined } from '@/Utils/checkIfNullOrUndefined';\r\nimport { checkIfMultiple } from '@/Utils/checkIfMultiple';\r\nimport { transformDefaultValue } from '@/Utils/transformDataForSelect';\r\n\r\ninterface Props {\r\n noOfColumns?: number;\r\n columnGridBy: string;\r\n graphSettings?: GraphSettingsDataType;\r\n dataSettings: DataSettingsDataType;\r\n filters?: FilterUiSettingsDataType[];\r\n noOfFiltersPerRow?: number;\r\n graphType: Exclude<GraphType, 'geoHubMap' | 'geoHubCompareMap' | 'geoHubMapWithLayerSelection'>;\r\n dataTransform?: {\r\n keyColumn: string;\r\n aggregationColumnsSetting?: AggregationSettingsDataType[];\r\n };\r\n showCommonColorScale?: boolean;\r\n dataFilters?: DataFilterDataType[];\r\n graphDataConfiguration?: GraphConfigurationDataType[];\r\n dataSelectionOptions?: DataSelectionDataType[];\r\n advancedDataSelectionOptions?: AdvancedDataSelectionDataType[];\r\n minGraphHeight?: number;\r\n minGraphWidth?: number;\r\n debugMode?: boolean;\r\n readableHeader?: {\r\n value: string;\r\n label: string;\r\n }[];\r\n uiMode?: 'light' | 'normal';\r\n theme?: 'dark' | 'light';\r\n}\r\n\r\nexport function GriddedGraphs(props: Props) {\r\n const {\r\n graphSettings,\r\n dataSettings,\r\n filters,\r\n graphType,\r\n dataTransform,\r\n graphDataConfiguration,\r\n noOfColumns,\r\n columnGridBy,\r\n dataFilters,\r\n showCommonColorScale,\r\n minGraphHeight,\r\n minGraphWidth,\r\n debugMode,\r\n dataSelectionOptions,\r\n advancedDataSelectionOptions,\r\n readableHeader,\r\n noOfFiltersPerRow = 4,\r\n uiMode = 'normal',\r\n theme = 'light',\r\n } = props;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [data, setData] = useState<any>(undefined);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [dataFromFile, setDataFromFile] = useState<any>(undefined);\r\n const [gridOption, setGridOption] = useState<(string | number)[]>([]);\r\n const graphParentDiv = useRef<HTMLDivElement>(null);\r\n const [graphConfig, setGraphConfig] = useState<GraphConfigurationDataType[] | undefined>(\r\n graphDataConfiguration,\r\n );\r\n const [filterSettings, setFilterSettings] = useState<FilterSettingsDataType[]>([]);\r\n const [advancedGraphSettings, setAdvancedGraphSettings] = useState<GraphSettingsDataType>({});\r\n\r\n const filterConfig = useMemo(\r\n () => ({\r\n ignoreCase: true,\r\n ignoreAccents: true,\r\n trim: true,\r\n }),\r\n [],\r\n );\r\n\r\n const filteredData = useMemo(() => {\r\n if (!dataFromFile || filterSettings.length === 0) return dataFromFile;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const result = dataFromFile.filter((item: any) =>\r\n filterSettings.every(filter =>\r\n filter.value && flattenDeep([filter.value]).length > 0\r\n ? intersection(\r\n flattenDeep([item[filter.filter]]),\r\n flattenDeep([filter.value]).map(el => el.value),\r\n ).length > 0\r\n : true,\r\n ),\r\n );\r\n return result;\r\n }, [filterSettings, dataFromFile]);\r\n useEffect(() => {\r\n setData(filteredData);\r\n }, [filteredData]);\r\n\r\n const fetchDataHandler = useCallback(async () => {\r\n if (dataSettings) {\r\n try {\r\n const fetchData = dataSettings.dataURL\r\n ? typeof dataSettings.dataURL === 'string'\r\n ? dataSettings.fileType === 'json'\r\n ? fetchAndParseJSON(\r\n dataSettings.dataURL,\r\n dataSettings.columnsToArray,\r\n dataSettings.dataTransformation,\r\n debugMode,\r\n )\r\n : dataSettings.fileType === 'api'\r\n ? fetchAndTransformDataFromAPI(\r\n dataSettings.dataURL,\r\n dataSettings.apiHeaders,\r\n dataSettings.columnsToArray,\r\n dataSettings.dataTransformation,\r\n debugMode,\r\n )\r\n : fetchAndParseCSV(\r\n dataSettings.dataURL,\r\n dataSettings.dataTransformation,\r\n dataSettings.columnsToArray,\r\n debugMode,\r\n dataSettings.delimiter,\r\n true,\r\n )\r\n : fetchAndParseMultipleDataSources(dataSettings.dataURL, dataSettings.idColumnTitle)\r\n : transformColumnsToArray(dataSettings.data, dataSettings.columnsToArray);\r\n\r\n const d = await fetchData;\r\n setDataFromFile(d);\r\n\r\n const gridValue = getUniqValue(d, columnGridBy) as (string | number)[];\r\n setGridOption(gridValue);\r\n // Optimize filter settings generation\r\n const newFilterSettings = (filters || []).map(el => ({\r\n filter: el.column,\r\n label: el.label || `Filter by ${el.column}`,\r\n singleSelect: el.singleSelect,\r\n clearable: el.clearable,\r\n defaultValue: transformDefaultValue(el.defaultValue),\r\n value: transformDefaultValue(el.defaultValue),\r\n availableValues: getUniqValue(d, el.column)\r\n .filter(v => !el.excludeValues?.includes(`${v}`))\r\n .map(v => ({ value: v, label: v })),\r\n allowSelectAll: el.allowSelectAll,\r\n width: el.width,\r\n }));\r\n\r\n setFilterSettings(newFilterSettings);\r\n } catch (error) {\r\n console.error('Data fetching error:', error);\r\n }\r\n }\r\n }, [dataSettings, debugMode, columnGridBy, filters]);\r\n useEffect(() => {\r\n fetchDataHandler();\r\n }, [fetchDataHandler]);\r\n useEffect(() => {\r\n setGraphConfig(graphDataConfiguration);\r\n }, [graphDataConfiguration]);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const handleFilterChange = useCallback((filter: string, values: any) => {\r\n setFilterSettings(prev => prev.map(f => (f.filter === filter ? { ...f, value: values } : f)));\r\n }, []);\r\n return (\r\n <div\r\n className={`${theme || graphSettings?.theme || 'light'} flex ${\r\n graphSettings?.width ? 'w-fit grow-0' : 'w-full grow'\r\n }`}\r\n dir={graphSettings?.language === 'he' || graphSettings?.language === 'ar' ? 'rtl' : undefined}\r\n >\r\n <div\r\n className={`${\r\n !graphSettings?.backgroundColor\r\n ? 'bg-transparent '\r\n : graphSettings?.backgroundColor === true\r\n ? 'bg-primary-gray-200 dark:bg-primary-gray-650 '\r\n : ''\r\n }ml-auto mr-auto flex flex-col grow h-inherit ${graphSettings?.language || 'en'}`}\r\n style={{\r\n ...(graphSettings?.backgroundColor && graphSettings?.backgroundColor !== true\r\n ? { backgroundColor: graphSettings?.backgroundColor }\r\n : {}),\r\n }}\r\n id={graphSettings?.graphID}\r\n ref={graphParentDiv}\r\n aria-label={\r\n graphSettings?.ariaLabel ||\r\n `${\r\n graphSettings?.graphTitle ? `The graph shows ${graphSettings?.graphTitle}. ` : ''\r\n }This is a gridded chart.${\r\n graphSettings?.graphDescription ? ` ${graphSettings?.graphDescription}` : ''\r\n }`\r\n }\r\n >\r\n <div\r\n style={{\r\n padding: graphSettings?.backgroundColor\r\n ? graphSettings?.padding || '1rem'\r\n : graphSettings?.padding || 0,\r\n flexGrow: 1,\r\n display: 'flex',\r\n }}\r\n >\r\n <div className='flex flex-col w-full gap-4 grow justify-between'>\r\n {advancedGraphSettings?.graphTitle ||\r\n advancedGraphSettings?.graphDescription ||\r\n graphSettings?.graphTitle ||\r\n graphSettings?.graphDescription ||\r\n graphSettings?.graphDownload ||\r\n graphSettings?.dataDownload ? (\r\n <GraphHeader\r\n styles={{\r\n title: advancedGraphSettings?.styles?.title || graphSettings?.styles?.title,\r\n description:\r\n advancedGraphSettings?.styles?.description ||\r\n graphSettings?.styles?.description,\r\n }}\r\n classNames={{\r\n title:\r\n advancedGraphSettings?.classNames?.title || graphSettings?.classNames?.title,\r\n description:\r\n advancedGraphSettings?.classNames?.description ||\r\n graphSettings?.classNames?.description,\r\n }}\r\n graphTitle={advancedGraphSettings?.graphTitle || graphSettings?.graphTitle}\r\n graphDescription={\r\n advancedGraphSettings?.graphDescription || graphSettings?.graphDescription\r\n }\r\n width={advancedGraphSettings?.width || graphSettings?.width}\r\n graphDownload={graphSettings?.graphDownload ? graphParentDiv.current : undefined}\r\n dataDownload={\r\n graphSettings?.dataDownload && data ? (data.length > 0 ? data : null) : null\r\n }\r\n />\r\n ) : null}\r\n {data && gridOption.length > 0 ? (\r\n <>\r\n {filterSettings.length !== 0 ||\r\n (dataSelectionOptions || []).length !== 0 ||\r\n (advancedDataSelectionOptions || []).length !== 0 ? (\r\n <div\r\n style={{\r\n display: 'flex',\r\n gap: '1rem',\r\n flexWrap: 'wrap',\r\n alignItems: 'flex-start',\r\n width: '100%',\r\n }}\r\n >\r\n {advancedDataSelectionOptions?.map((d, i) => (\r\n <div\r\n style={{\r\n width:\r\n d.width ||\r\n `calc(${100 / noOfFiltersPerRow}% - ${\r\n (noOfFiltersPerRow - 1) / noOfFiltersPerRow\r\n }rem)`,\r\n flexGrow: 1,\r\n flexShrink: d.ui !== 'radio' ? 0 : 1,\r\n minWidth: '240px',\r\n }}\r\n key={i}\r\n >\r\n <Label className='mb-2'>{d.label || 'Graph by'}</Label>\r\n {d.ui !== 'radio' ? (\r\n <DropdownSelect\r\n options={d.options.map(opt => ({\r\n ...opt,\r\n value: opt.label,\r\n }))}\r\n isClearable={false}\r\n isSearchable\r\n variant={uiMode}\r\n controlShouldRenderValue\r\n defaultValue={\r\n d.defaultValue\r\n ? {\r\n ...d.defaultValue,\r\n value: d.defaultValue?.label,\r\n }\r\n : {\r\n ...d.options[0],\r\n value: d.options[0].label,\r\n }\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onChange={(el: any) => {\r\n setAdvancedGraphSettings(el?.graphSettings || {});\r\n setGraphConfig(el?.dataConfiguration);\r\n }}\r\n />\r\n ) : (\r\n <RadioGroup\r\n defaultValue={d.defaultValue?.label || d.options[0].label}\r\n variant={uiMode}\r\n onValueChange={el => {\r\n const selectedOption =\r\n d.options[d.options.findIndex(opt => opt.label === el)];\r\n setAdvancedGraphSettings(selectedOption.graphSettings || {});\r\n setGraphConfig(selectedOption.dataConfiguration);\r\n }}\r\n >\r\n {d.options.map((el, j) => (\r\n <RadioGroupItem label={el.label} value={el.label} key={j} />\r\n ))}\r\n </RadioGroup>\r\n )}\r\n </div>\r\n ))}\r\n {dataSelectionOptions?.map((d, i) => (\r\n <div\r\n style={{\r\n width:\r\n d.width ||\r\n `calc(${100 / noOfFiltersPerRow}% - ${\r\n (noOfFiltersPerRow - 1) / noOfFiltersPerRow\r\n }rem)`,\r\n flexGrow: 1,\r\n flexShrink: d.ui !== 'radio' ? 0 : 1,\r\n minWidth: '240px',\r\n }}\r\n key={i}\r\n >\r\n <Label className='mb-2'>\r\n {d.label || `Visualize ${d.chartConfigId} by`}\r\n </Label>\r\n {!checkIfMultiple(d.chartConfigId, graphConfig || []) ? (\r\n d.ui !== 'radio' ? (\r\n <DropdownSelect\r\n options={d.allowedColumnIds}\r\n isClearable={false}\r\n isSearchable\r\n variant={uiMode}\r\n defaultValue={\r\n graphDataConfiguration\r\n ? d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(\r\n j =>\r\n j.value ===\r\n (graphDataConfiguration[\r\n graphDataConfiguration.findIndex(\r\n el => el.chartConfigId === d.chartConfigId,\r\n )\r\n ].columnId as string),\r\n )\r\n ]\r\n : undefined\r\n }\r\n controlShouldRenderValue\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onChange={(el: any) => {\r\n const newGraphConfig = {\r\n columnId: el?.value as string,\r\n chartConfigId: d.chartConfigId,\r\n };\r\n const updatedConfig = graphConfig?.map(item =>\r\n item.chartConfigId === newGraphConfig.chartConfigId\r\n ? newGraphConfig\r\n : item,\r\n );\r\n setAdvancedGraphSettings(el?.graphSettings || {});\r\n setGraphConfig(updatedConfig);\r\n }}\r\n />\r\n ) : (\r\n <RadioGroup\r\n variant={uiMode}\r\n defaultValue={\r\n graphDataConfiguration\r\n ? d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(\r\n j =>\r\n j.value ===\r\n (graphDataConfiguration[\r\n graphDataConfiguration.findIndex(\r\n el => el.chartConfigId === d.chartConfigId,\r\n )\r\n ].columnId as string),\r\n )\r\n ].label\r\n : ''\r\n }\r\n onValueChange={el => {\r\n const selectedOption =\r\n d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(opt => opt.label === el)\r\n ];\r\n const newGraphConfig = {\r\n columnId: selectedOption.value,\r\n chartConfigId: d.chartConfigId,\r\n };\r\n const updatedConfig = graphConfig?.map(item =>\r\n item.chartConfigId === newGraphConfig.chartConfigId\r\n ? newGraphConfig\r\n : item,\r\n );\r\n setAdvancedGraphSettings(selectedOption.graphSettings || {});\r\n setGraphConfig(updatedConfig);\r\n }}\r\n >\r\n {d.allowedColumnIds.map((el, j) => (\r\n <RadioGroupItem label={el.label} value={el.label} key={j} />\r\n ))}\r\n </RadioGroup>\r\n )\r\n ) : d.ui !== 'radio' ? (\r\n <DropdownSelect\r\n options={d.allowedColumnIds}\r\n isMulti\r\n variant={uiMode}\r\n isSearchable\r\n controlShouldRenderValue\r\n defaultValue={\r\n graphDataConfiguration\r\n ? (\r\n graphDataConfiguration[\r\n graphDataConfiguration.findIndex(\r\n el => el.chartConfigId === d.chartConfigId,\r\n )\r\n ].columnId as string[]\r\n ).map(\r\n el =>\r\n d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(j => j.value === el)\r\n ],\r\n )\r\n : undefined\r\n }\r\n filterOption={createFilter(filterConfig)}\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onChange={(el: any) => {\r\n const newGraphConfig = {\r\n columnId: el.map(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (item: any) => item.value,\r\n ) as string[],\r\n chartConfigId: d.chartConfigId,\r\n };\r\n const updatedConfig = graphConfig?.map(item =>\r\n item.chartConfigId === newGraphConfig.chartConfigId\r\n ? newGraphConfig\r\n : item,\r\n );\r\n setGraphConfig(updatedConfig);\r\n }}\r\n isRtl={\r\n graphSettings?.language === 'ar' || graphSettings?.language === 'he'\r\n }\r\n />\r\n ) : (\r\n <CheckboxGroup\r\n variant={uiMode}\r\n defaultValue={\r\n graphDataConfiguration\r\n ? (\r\n graphDataConfiguration[\r\n graphDataConfiguration.findIndex(\r\n el => el.chartConfigId === d.chartConfigId,\r\n )\r\n ].columnId as string[]\r\n )\r\n .map(\r\n el =>\r\n d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(j => j.value === el)\r\n ],\r\n )\r\n .map(el => el.value)\r\n : []\r\n }\r\n onValueChange={el => {\r\n const newGraphConfig = {\r\n columnId: el || [],\r\n chartConfigId: d.chartConfigId,\r\n };\r\n const updatedConfig = graphConfig?.map(item =>\r\n item.chartConfigId === newGraphConfig.chartConfigId\r\n ? newGraphConfig\r\n : item,\r\n );\r\n setGraphConfig(updatedConfig);\r\n }}\r\n >\r\n {d.allowedColumnIds.map((el, j) => (\r\n <CheckboxGroupItem label={el.label} value={el.label} key={j} />\r\n ))}\r\n </CheckboxGroup>\r\n )}\r\n </div>\r\n ))}\r\n {filterSettings?.map((d, i) => (\r\n <div\r\n style={{\r\n width:\r\n d.width ||\r\n `calc(${100 / noOfFiltersPerRow}% - ${\r\n (noOfFiltersPerRow - 1) / noOfFiltersPerRow\r\n }rem)`,\r\n flexGrow: 1,\r\n flexShrink: 0,\r\n flexWrap: 'wrap',\r\n }}\r\n key={i}\r\n >\r\n <Label className='mb-2'>{d.label}</Label>\r\n {d.singleSelect ? (\r\n <DropdownSelect\r\n variant={uiMode}\r\n options={d.availableValues}\r\n isClearable={d.clearable === undefined ? true : d.clearable}\r\n isRtl={\r\n graphSettings?.language === 'ar' || graphSettings?.language === 'he'\r\n }\r\n isSearchable\r\n controlShouldRenderValue\r\n filterOption={createFilter(filterConfig)}\r\n onChange={el => {\r\n handleFilterChange(d.filter, el);\r\n }}\r\n defaultValue={d.defaultValue}\r\n />\r\n ) : (\r\n <>\r\n <DropdownSelect\r\n variant={uiMode}\r\n options={d.availableValues}\r\n isMulti\r\n isClearable={d.clearable === undefined ? true : d.clearable}\r\n isSearchable\r\n controlShouldRenderValue\r\n filterOption={createFilter(filterConfig)}\r\n onChange={el => {\r\n handleFilterChange(d.filter, el);\r\n }}\r\n defaultValue={d.defaultValue}\r\n isRtl={\r\n graphSettings?.language === 'ar' || graphSettings?.language === 'he'\r\n }\r\n />\r\n {d.allowSelectAll ? (\r\n <button\r\n className='bg-transparent border-0 p-0 mt-2 cursor-pointer text-primary-blue-600 dark:text-primary-blue-400'\r\n type='button'\r\n onClick={() => {\r\n handleFilterChange(d.filter, d.availableValues);\r\n }}\r\n >\r\n Select all options\r\n </button>\r\n ) : null}\r\n </>\r\n )}\r\n </div>\r\n ))}\r\n </div>\r\n ) : null}\r\n {showCommonColorScale !== false && graphSettings?.showColorScale !== false ? (\r\n <ColorLegend\r\n width={graphSettings?.width}\r\n colorLegendTitle={graphSettings?.colorLegendTitle}\r\n colors={\r\n (graphSettings?.colors as string[] | undefined) ||\r\n (graphSettings?.lineColors as string[] | undefined) ||\r\n Colors[(graphSettings?.theme as 'light' | 'dark' | undefined) || 'light']\r\n .categoricalColors.colors\r\n }\r\n colorDomain={graphSettings?.colorDomain || graphSettings?.labels || []}\r\n showNAColor={\r\n graphSettings?.showNAColor === undefined ||\r\n graphSettings?.showNAColor === null\r\n ? true\r\n : graphSettings?.showNAColor\r\n }\r\n />\r\n ) : null}\r\n <div\r\n style={{\r\n display: 'flex',\r\n flexWrap: 'wrap',\r\n gap: '1rem',\r\n flexDirection:\r\n graphSettings?.language === 'ar' || graphSettings?.language === 'he'\r\n ? 'row-reverse'\r\n : 'row',\r\n justifyContent: 'center',\r\n }}\r\n >\r\n {gridOption.map((el, i) => (\r\n <div\r\n key={i}\r\n style={{\r\n width: `calc(${\r\n 100 /\r\n (noOfColumns || (Math.min(...[4, gridOption.length || 0]) as number))\r\n }% - ${\r\n ((noOfColumns || (Math.min(...[4, gridOption.length || 0]) as number)) -\r\n 1) /\r\n (noOfColumns || (Math.min(...[4, gridOption.length || 0]) as number))\r\n }rem)`,\r\n minWidth: checkIfNullOrUndefined(minGraphWidth)\r\n ? '280px'\r\n : `${minGraphWidth}px`,\r\n }}\r\n >\r\n <GraphEl\r\n graph={graphType}\r\n graphDataConfiguration={graphConfig}\r\n graphData={\r\n transformDataForGraph(\r\n dataTransform\r\n ? transformDataForAggregation(\r\n filterData(data, dataFilters || []).filter(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (d: any) => d[columnGridBy] === el,\r\n ),\r\n dataTransform.keyColumn,\r\n dataTransform.aggregationColumnsSetting,\r\n )\r\n : filterData(data, dataFilters || []).filter(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (d: any) => d[columnGridBy] === el,\r\n ),\r\n graphType,\r\n graphConfig,\r\n ) || []\r\n }\r\n debugMode={debugMode}\r\n settings={{\r\n ...(graphSettings || {}),\r\n ...advancedGraphSettings,\r\n theme: graphSettings?.theme || theme,\r\n width: undefined,\r\n height: undefined,\r\n relativeHeight: graphSettings?.relativeHeight || 0.67,\r\n minHeight: minGraphHeight,\r\n graphTitle: `${el}`,\r\n graphDescription: undefined,\r\n graphDownload: false,\r\n dataDownload: false,\r\n backgroundColor: undefined,\r\n padding: '0',\r\n footNote: undefined,\r\n sources: undefined,\r\n showColorScale:\r\n graphSettings?.showColorScale === false\r\n ? false\r\n : showCommonColorScale === false,\r\n }}\r\n readableHeader={readableHeader || []}\r\n />\r\n </div>\r\n ))}\r\n </div>\r\n </>\r\n ) : (\r\n <div className='w-full flex justify-center p-4'>\r\n <Spinner />\r\n </div>\r\n )}\r\n {graphSettings?.sources || graphSettings?.footNote ? (\r\n <GraphFooter\r\n styles={{\r\n footnote: graphSettings?.styles?.footnote,\r\n source: graphSettings?.styles?.source,\r\n }}\r\n classNames={{\r\n footnote: graphSettings?.classNames?.footnote,\r\n source: graphSettings?.classNames?.source,\r\n }}\r\n sources={graphSettings?.sources}\r\n footNote={graphSettings?.footNote}\r\n width={graphSettings?.width}\r\n />\r\n ) : null}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["GriddedGraphs","props","graphSettings","dataSettings","filters","graphType","dataTransform","graphDataConfiguration","noOfColumns","columnGridBy","dataFilters","showCommonColorScale","minGraphHeight","minGraphWidth","debugMode","dataSelectionOptions","advancedDataSelectionOptions","readableHeader","noOfFiltersPerRow","uiMode","theme","data","setData","useState","dataFromFile","setDataFromFile","gridOption","setGridOption","graphParentDiv","useRef","graphConfig","setGraphConfig","filterSettings","setFilterSettings","advancedGraphSettings","setAdvancedGraphSettings","filterConfig","useMemo","filteredData","item","filter","flattenDeep","intersection","el","useEffect","fetchDataHandler","useCallback","d","fetchAndParseJSON","fetchAndTransformDataFromAPI","fetchAndParseCSV","fetchAndParseMultipleDataSources","transformColumnsToArray","gridValue","getUniqValue","newFilterSettings","transformDefaultValue","v","error","handleFilterChange","values","prev","f","jsx","jsxs","GraphHeader","Fragment","i","Label","DropdownSelect","opt","RadioGroup","selectedOption","j","RadioGroupItem","checkIfMultiple","createFilter","newGraphConfig","updatedConfig","CheckboxGroup","CheckboxGroupItem","ColorLegend","Colors","checkIfNullOrUndefined","GraphEl","transformDataForGraph","transformDataForAggregation","filterData","Spinner","GraphFooter"],"mappings":"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"}
1
+ {"version":3,"file":"GriddedGraphs.cjs","sources":["../src/Components/Dashboard/GriddedGraphs.tsx"],"sourcesContent":["import { useCallback, useEffect, useMemo, useRef, useState } from 'react';\r\nimport intersection from 'lodash.intersection';\r\nimport flattenDeep from 'lodash.flattendeep';\r\nimport { CheckboxGroup, CheckboxGroupItem } from '@undp/design-system-react/CheckboxGroup';\r\nimport { Spinner } from '@undp/design-system-react/Spinner';\r\nimport { RadioGroup, RadioGroupItem } from '@undp/design-system-react/RadioGroup';\r\nimport { createFilter, DropdownSelect } from '@undp/design-system-react/DropdownSelect';\r\nimport { Label } from '@undp/design-system-react/Label';\r\n\r\nimport GraphEl from './GraphEl';\r\n\r\nimport {\r\n AdvancedDataSelectionDataType,\r\n AggregationSettingsDataType,\r\n DataFilterDataType,\r\n DataSelectionDataType,\r\n DataSettingsDataType,\r\n FilterSettingsDataType,\r\n FilterUiSettingsDataType,\r\n GraphConfigurationDataType,\r\n GraphSettingsDataType,\r\n GraphType,\r\n} from '@/Types';\r\nimport {\r\n fetchAndParseCSV,\r\n fetchAndParseJSON,\r\n fetchAndParseMultipleDataSources,\r\n fetchAndTransformDataFromAPI,\r\n} from '@/Utils/fetchAndParseData';\r\nimport { Colors } from '@/Components/ColorPalette';\r\nimport { transformColumnsToArray } from '@/Utils/transformData/transformColumnsToArray';\r\nimport { transformDataForGraph } from '@/Utils/transformData/transformDataForGraph';\r\nimport { getUniqValue } from '@/Utils/getUniqValue';\r\nimport { transformDataForAggregation } from '@/Utils/transformData/transformDataForAggregation';\r\nimport { GraphHeader } from '@/Components/Elements/GraphHeader';\r\nimport { GraphFooter } from '@/Components/Elements/GraphFooter';\r\nimport { filterData } from '@/Utils/transformData/filterData';\r\nimport { ColorLegend } from '@/Components/Elements/ColorLegend';\r\nimport { checkIfNullOrUndefined } from '@/Utils/checkIfNullOrUndefined';\r\nimport { checkIfMultiple } from '@/Utils/checkIfMultiple';\r\nimport { transformDefaultValue } from '@/Utils/transformDataForSelect';\r\n\r\ninterface Props {\r\n noOfColumns?: number;\r\n columnGridBy: string;\r\n graphSettings?: GraphSettingsDataType;\r\n dataSettings: DataSettingsDataType;\r\n filters?: FilterUiSettingsDataType[];\r\n noOfFiltersPerRow?: number;\r\n graphType: Exclude<GraphType, 'geoHubMap' | 'geoHubCompareMap' | 'geoHubMapWithLayerSelection'>;\r\n dataTransform?: {\r\n keyColumn: string;\r\n aggregationColumnsSetting?: AggregationSettingsDataType[];\r\n };\r\n showCommonColorScale?: boolean;\r\n dataFilters?: DataFilterDataType[];\r\n graphDataConfiguration?: GraphConfigurationDataType[];\r\n dataSelectionOptions?: DataSelectionDataType[];\r\n advancedDataSelectionOptions?: AdvancedDataSelectionDataType[];\r\n minGraphHeight?: number;\r\n minGraphWidth?: number;\r\n debugMode?: boolean;\r\n readableHeader?: {\r\n value: string;\r\n label: string;\r\n }[];\r\n uiMode?: 'light' | 'normal';\r\n theme?: 'dark' | 'light';\r\n}\r\n\r\nexport function GriddedGraphs(props: Props) {\r\n const {\r\n graphSettings,\r\n dataSettings,\r\n filters,\r\n graphType,\r\n dataTransform,\r\n graphDataConfiguration,\r\n noOfColumns,\r\n columnGridBy,\r\n dataFilters,\r\n showCommonColorScale,\r\n minGraphHeight,\r\n minGraphWidth,\r\n debugMode,\r\n dataSelectionOptions,\r\n advancedDataSelectionOptions,\r\n readableHeader,\r\n noOfFiltersPerRow = 4,\r\n uiMode = 'normal',\r\n theme = 'light',\r\n } = props;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [data, setData] = useState<any>(undefined);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const [dataFromFile, setDataFromFile] = useState<any>(undefined);\r\n const [gridOption, setGridOption] = useState<(string | number)[]>([]);\r\n const graphParentDiv = useRef<HTMLDivElement>(null);\r\n const [graphConfig, setGraphConfig] = useState<GraphConfigurationDataType[] | undefined>(\r\n graphDataConfiguration,\r\n );\r\n const [filterSettings, setFilterSettings] = useState<FilterSettingsDataType[]>([]);\r\n const [advancedGraphSettings, setAdvancedGraphSettings] = useState<GraphSettingsDataType>({});\r\n\r\n const filterConfig = useMemo(\r\n () => ({\r\n ignoreCase: true,\r\n ignoreAccents: true,\r\n trim: true,\r\n }),\r\n [],\r\n );\r\n\r\n const filteredData = useMemo(() => {\r\n if (!dataFromFile || filterSettings.length === 0) return dataFromFile;\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const result = dataFromFile.filter((item: any) =>\r\n filterSettings.every(filter =>\r\n filter.value && flattenDeep([filter.value]).length > 0\r\n ? intersection(\r\n flattenDeep([item[filter.filter]]),\r\n flattenDeep([filter.value]).map(el => el.value),\r\n ).length > 0\r\n : true,\r\n ),\r\n );\r\n return result;\r\n }, [filterSettings, dataFromFile]);\r\n useEffect(() => {\r\n setData(filteredData);\r\n }, [filteredData]);\r\n\r\n const fetchDataHandler = useCallback(async () => {\r\n if (dataSettings) {\r\n try {\r\n const fetchData = dataSettings.dataURL\r\n ? typeof dataSettings.dataURL === 'string'\r\n ? dataSettings.fileType === 'json'\r\n ? fetchAndParseJSON(\r\n dataSettings.dataURL,\r\n dataSettings.columnsToArray,\r\n dataSettings.dataTransformation,\r\n debugMode,\r\n )\r\n : dataSettings.fileType === 'api'\r\n ? fetchAndTransformDataFromAPI(\r\n dataSettings.dataURL,\r\n dataSettings.apiHeaders,\r\n dataSettings.columnsToArray,\r\n dataSettings.dataTransformation,\r\n debugMode,\r\n )\r\n : fetchAndParseCSV(\r\n dataSettings.dataURL,\r\n dataSettings.dataTransformation,\r\n dataSettings.columnsToArray,\r\n debugMode,\r\n dataSettings.delimiter,\r\n true,\r\n )\r\n : fetchAndParseMultipleDataSources(dataSettings.dataURL, dataSettings.idColumnTitle)\r\n : transformColumnsToArray(dataSettings.data, dataSettings.columnsToArray);\r\n\r\n const d = await fetchData;\r\n setDataFromFile(d);\r\n\r\n const gridValue = getUniqValue(d, columnGridBy) as (string | number)[];\r\n setGridOption(gridValue);\r\n // Optimize filter settings generation\r\n const newFilterSettings = (filters || []).map(el => ({\r\n filter: el.column,\r\n label: el.label || `Filter by ${el.column}`,\r\n singleSelect: el.singleSelect,\r\n clearable: el.clearable,\r\n defaultValue: transformDefaultValue(el.defaultValue),\r\n value: transformDefaultValue(el.defaultValue),\r\n availableValues: getUniqValue(d, el.column)\r\n .filter(v => !el.excludeValues?.includes(`${v}`))\r\n .map(v => ({ value: v, label: v })),\r\n allowSelectAll: el.allowSelectAll,\r\n width: el.width,\r\n }));\r\n\r\n setFilterSettings(newFilterSettings);\r\n } catch (error) {\r\n console.error('Data fetching error:', error);\r\n }\r\n }\r\n }, [dataSettings, debugMode, columnGridBy, filters]);\r\n useEffect(() => {\r\n fetchDataHandler();\r\n }, [fetchDataHandler]);\r\n useEffect(() => {\r\n setGraphConfig(graphDataConfiguration);\r\n }, [graphDataConfiguration]);\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n const handleFilterChange = useCallback((filter: string, values: any) => {\r\n setFilterSettings(prev => prev.map(f => (f.filter === filter ? { ...f, value: values } : f)));\r\n }, []);\r\n return (\r\n <div\r\n className={`${theme || graphSettings?.theme || 'light'} flex ${\r\n graphSettings?.width ? 'w-fit grow-0' : 'w-full grow'\r\n }`}\r\n dir={graphSettings?.language === 'he' || graphSettings?.language === 'ar' ? 'rtl' : undefined}\r\n >\r\n <div\r\n className={`${\r\n !graphSettings?.backgroundColor\r\n ? 'bg-transparent '\r\n : graphSettings?.backgroundColor === true\r\n ? 'bg-primary-gray-200 dark:bg-primary-gray-650 '\r\n : ''\r\n }ml-auto mr-auto flex flex-col grow h-inherit ${graphSettings?.language || 'en'}`}\r\n style={{\r\n ...(graphSettings?.backgroundColor && graphSettings?.backgroundColor !== true\r\n ? { backgroundColor: graphSettings?.backgroundColor }\r\n : {}),\r\n }}\r\n id={graphSettings?.graphID}\r\n ref={graphParentDiv}\r\n aria-label={\r\n graphSettings?.ariaLabel ||\r\n `${\r\n graphSettings?.graphTitle ? `The graph shows ${graphSettings?.graphTitle}. ` : ''\r\n }This is a gridded chart.${\r\n graphSettings?.graphDescription ? ` ${graphSettings?.graphDescription}` : ''\r\n }`\r\n }\r\n >\r\n <div\r\n style={{\r\n padding: graphSettings?.backgroundColor\r\n ? graphSettings?.padding || '1rem'\r\n : graphSettings?.padding || 0,\r\n flexGrow: 1,\r\n display: 'flex',\r\n }}\r\n >\r\n <div className='flex flex-col w-full gap-4 grow justify-between'>\r\n {advancedGraphSettings?.graphTitle ||\r\n advancedGraphSettings?.graphDescription ||\r\n graphSettings?.graphTitle ||\r\n graphSettings?.graphDescription ||\r\n graphSettings?.graphDownload ||\r\n graphSettings?.dataDownload ? (\r\n <GraphHeader\r\n styles={{\r\n title: advancedGraphSettings?.styles?.title || graphSettings?.styles?.title,\r\n description:\r\n advancedGraphSettings?.styles?.description ||\r\n graphSettings?.styles?.description,\r\n }}\r\n classNames={{\r\n title:\r\n advancedGraphSettings?.classNames?.title || graphSettings?.classNames?.title,\r\n description:\r\n advancedGraphSettings?.classNames?.description ||\r\n graphSettings?.classNames?.description,\r\n }}\r\n graphTitle={advancedGraphSettings?.graphTitle || graphSettings?.graphTitle}\r\n graphDescription={\r\n advancedGraphSettings?.graphDescription || graphSettings?.graphDescription\r\n }\r\n width={advancedGraphSettings?.width || graphSettings?.width}\r\n graphDownload={graphSettings?.graphDownload ? graphParentDiv.current : undefined}\r\n dataDownload={\r\n graphSettings?.dataDownload && data ? (data.length > 0 ? data : null) : null\r\n }\r\n />\r\n ) : null}\r\n {data && gridOption.length > 0 ? (\r\n <>\r\n {filterSettings.length !== 0 ||\r\n (dataSelectionOptions || []).length !== 0 ||\r\n (advancedDataSelectionOptions || []).length !== 0 ? (\r\n <div\r\n style={{\r\n display: 'flex',\r\n gap: '1rem',\r\n flexWrap: 'wrap',\r\n alignItems: 'flex-start',\r\n width: '100%',\r\n }}\r\n >\r\n {advancedDataSelectionOptions?.map((d, i) => (\r\n <div\r\n style={{\r\n width:\r\n d.width ||\r\n `calc(${100 / noOfFiltersPerRow}% - ${\r\n (noOfFiltersPerRow - 1) / noOfFiltersPerRow\r\n }rem)`,\r\n flexGrow: 1,\r\n flexShrink: d.ui !== 'radio' ? 0 : 1,\r\n minWidth: '240px',\r\n }}\r\n key={i}\r\n >\r\n <Label className='mb-2'>{d.label || 'Graph by'}</Label>\r\n {d.ui !== 'radio' ? (\r\n <DropdownSelect\r\n options={d.options.map(opt => ({\r\n ...opt,\r\n value: opt.label,\r\n }))}\r\n isClearable={false}\r\n isSearchable\r\n variant={uiMode}\r\n controlShouldRenderValue\r\n defaultValue={\r\n d.defaultValue\r\n ? {\r\n ...d.defaultValue,\r\n value: d.defaultValue?.label,\r\n }\r\n : {\r\n ...d.options[0],\r\n value: d.options[0].label,\r\n }\r\n }\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onChange={(el: any) => {\r\n setAdvancedGraphSettings(el?.graphSettings || {});\r\n setGraphConfig(el?.dataConfiguration);\r\n }}\r\n />\r\n ) : (\r\n <RadioGroup\r\n defaultValue={d.defaultValue?.label || d.options[0].label}\r\n variant={uiMode}\r\n onValueChange={el => {\r\n const selectedOption =\r\n d.options[d.options.findIndex(opt => opt.label === el)];\r\n setAdvancedGraphSettings(selectedOption.graphSettings || {});\r\n setGraphConfig(selectedOption.dataConfiguration);\r\n }}\r\n >\r\n {d.options.map((el, j) => (\r\n <RadioGroupItem label={el.label} value={el.label} key={j} />\r\n ))}\r\n </RadioGroup>\r\n )}\r\n </div>\r\n ))}\r\n {dataSelectionOptions?.map((d, i) => (\r\n <div\r\n style={{\r\n width:\r\n d.width ||\r\n `calc(${100 / noOfFiltersPerRow}% - ${\r\n (noOfFiltersPerRow - 1) / noOfFiltersPerRow\r\n }rem)`,\r\n flexGrow: 1,\r\n flexShrink: d.ui !== 'radio' ? 0 : 1,\r\n minWidth: '240px',\r\n }}\r\n key={i}\r\n >\r\n <Label className='mb-2'>\r\n {d.label || `Visualize ${d.chartConfigId} by`}\r\n </Label>\r\n {!checkIfMultiple(d.chartConfigId, graphConfig || []) ? (\r\n d.ui !== 'radio' ? (\r\n <DropdownSelect\r\n options={d.allowedColumnIds}\r\n isClearable={false}\r\n isSearchable\r\n variant={uiMode}\r\n defaultValue={\r\n graphDataConfiguration\r\n ? d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(\r\n j =>\r\n j.value ===\r\n (graphDataConfiguration[\r\n graphDataConfiguration.findIndex(\r\n el => el.chartConfigId === d.chartConfigId,\r\n )\r\n ].columnId as string),\r\n )\r\n ]\r\n : undefined\r\n }\r\n controlShouldRenderValue\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onChange={(el: any) => {\r\n const newGraphConfig = {\r\n columnId: el?.value as string,\r\n chartConfigId: d.chartConfigId,\r\n };\r\n const updatedConfig = graphConfig?.map(item =>\r\n item.chartConfigId === newGraphConfig.chartConfigId\r\n ? newGraphConfig\r\n : item,\r\n );\r\n setAdvancedGraphSettings(el?.graphSettings || {});\r\n setGraphConfig(updatedConfig);\r\n }}\r\n />\r\n ) : (\r\n <RadioGroup\r\n variant={uiMode}\r\n defaultValue={\r\n graphDataConfiguration\r\n ? d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(\r\n j =>\r\n j.value ===\r\n (graphDataConfiguration[\r\n graphDataConfiguration.findIndex(\r\n el => el.chartConfigId === d.chartConfigId,\r\n )\r\n ].columnId as string),\r\n )\r\n ].label\r\n : ''\r\n }\r\n onValueChange={el => {\r\n const selectedOption =\r\n d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(opt => opt.label === el)\r\n ];\r\n const newGraphConfig = {\r\n columnId: selectedOption.value,\r\n chartConfigId: d.chartConfigId,\r\n };\r\n const updatedConfig = graphConfig?.map(item =>\r\n item.chartConfigId === newGraphConfig.chartConfigId\r\n ? newGraphConfig\r\n : item,\r\n );\r\n setAdvancedGraphSettings(selectedOption.graphSettings || {});\r\n setGraphConfig(updatedConfig);\r\n }}\r\n >\r\n {d.allowedColumnIds.map((el, j) => (\r\n <RadioGroupItem label={el.label} value={el.label} key={j} />\r\n ))}\r\n </RadioGroup>\r\n )\r\n ) : d.ui !== 'radio' ? (\r\n <DropdownSelect\r\n options={d.allowedColumnIds}\r\n isMulti\r\n variant={uiMode}\r\n isSearchable\r\n controlShouldRenderValue\r\n defaultValue={\r\n graphDataConfiguration\r\n ? (\r\n graphDataConfiguration[\r\n graphDataConfiguration.findIndex(\r\n el => el.chartConfigId === d.chartConfigId,\r\n )\r\n ].columnId as string[]\r\n ).map(\r\n el =>\r\n d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(j => j.value === el)\r\n ],\r\n )\r\n : undefined\r\n }\r\n filterOption={createFilter(filterConfig)}\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n onChange={(el: any) => {\r\n const newGraphConfig = {\r\n columnId: el.map(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (item: any) => item.value,\r\n ) as string[],\r\n chartConfigId: d.chartConfigId,\r\n };\r\n const updatedConfig = graphConfig?.map(item =>\r\n item.chartConfigId === newGraphConfig.chartConfigId\r\n ? newGraphConfig\r\n : item,\r\n );\r\n setGraphConfig(updatedConfig);\r\n }}\r\n isRtl={\r\n graphSettings?.language === 'ar' || graphSettings?.language === 'he'\r\n }\r\n />\r\n ) : (\r\n <CheckboxGroup\r\n variant={uiMode}\r\n defaultValue={\r\n graphDataConfiguration\r\n ? (\r\n graphDataConfiguration[\r\n graphDataConfiguration.findIndex(\r\n el => el.chartConfigId === d.chartConfigId,\r\n )\r\n ].columnId as string[]\r\n )\r\n .map(\r\n el =>\r\n d.allowedColumnIds[\r\n d.allowedColumnIds.findIndex(j => j.value === el)\r\n ],\r\n )\r\n .map(el => el.value)\r\n : []\r\n }\r\n onValueChange={el => {\r\n const newGraphConfig = {\r\n columnId: el || [],\r\n chartConfigId: d.chartConfigId,\r\n };\r\n const updatedConfig = graphConfig?.map(item =>\r\n item.chartConfigId === newGraphConfig.chartConfigId\r\n ? newGraphConfig\r\n : item,\r\n );\r\n setGraphConfig(updatedConfig);\r\n }}\r\n >\r\n {d.allowedColumnIds.map((el, j) => (\r\n <CheckboxGroupItem label={el.label} value={el.label} key={j} />\r\n ))}\r\n </CheckboxGroup>\r\n )}\r\n </div>\r\n ))}\r\n {filterSettings?.map((d, i) => (\r\n <div\r\n style={{\r\n width:\r\n d.width ||\r\n `calc(${100 / noOfFiltersPerRow}% - ${\r\n (noOfFiltersPerRow - 1) / noOfFiltersPerRow\r\n }rem)`,\r\n flexGrow: 1,\r\n flexShrink: 0,\r\n flexWrap: 'wrap',\r\n }}\r\n key={i}\r\n >\r\n <Label className='mb-2'>{d.label}</Label>\r\n {d.singleSelect ? (\r\n <DropdownSelect\r\n variant={uiMode}\r\n options={d.availableValues}\r\n isClearable={d.clearable === undefined ? true : d.clearable}\r\n isRtl={\r\n graphSettings?.language === 'ar' || graphSettings?.language === 'he'\r\n }\r\n isSearchable\r\n controlShouldRenderValue\r\n filterOption={createFilter(filterConfig)}\r\n onChange={el => {\r\n handleFilterChange(d.filter, el);\r\n }}\r\n defaultValue={d.defaultValue}\r\n />\r\n ) : (\r\n <>\r\n <DropdownSelect\r\n variant={uiMode}\r\n options={d.availableValues}\r\n isMulti\r\n isClearable={d.clearable === undefined ? true : d.clearable}\r\n isSearchable\r\n controlShouldRenderValue\r\n filterOption={createFilter(filterConfig)}\r\n onChange={el => {\r\n handleFilterChange(d.filter, el);\r\n }}\r\n defaultValue={d.defaultValue}\r\n isRtl={\r\n graphSettings?.language === 'ar' || graphSettings?.language === 'he'\r\n }\r\n />\r\n {d.allowSelectAll ? (\r\n <button\r\n className='bg-transparent border-0 p-0 mt-2 cursor-pointer text-primary-blue-600 dark:text-primary-blue-400'\r\n type='button'\r\n onClick={() => {\r\n handleFilterChange(d.filter, d.availableValues);\r\n }}\r\n >\r\n Select all options\r\n </button>\r\n ) : null}\r\n </>\r\n )}\r\n </div>\r\n ))}\r\n </div>\r\n ) : null}\r\n {showCommonColorScale !== false && graphSettings?.showColorScale !== false ? (\r\n <ColorLegend\r\n width={graphSettings?.width}\r\n colorLegendTitle={graphSettings?.colorLegendTitle}\r\n colors={\r\n (graphSettings?.colors as string[] | undefined) ||\r\n (graphSettings?.lineColors as string[] | undefined) ||\r\n Colors[(graphSettings?.theme as 'light' | 'dark' | undefined) || 'light']\r\n .categoricalColors.colors\r\n }\r\n colorDomain={graphSettings?.colorDomain || graphSettings?.labels || []}\r\n showNAColor={\r\n graphSettings?.showNAColor === undefined ||\r\n graphSettings?.showNAColor === null\r\n ? true\r\n : graphSettings?.showNAColor\r\n }\r\n />\r\n ) : null}\r\n <div\r\n style={{\r\n display: 'flex',\r\n flexWrap: 'wrap',\r\n gap: '1rem',\r\n flexDirection:\r\n graphSettings?.language === 'ar' || graphSettings?.language === 'he'\r\n ? 'row-reverse'\r\n : 'row',\r\n justifyContent: 'center',\r\n }}\r\n >\r\n {gridOption.map((el, i) => (\r\n <div\r\n key={i}\r\n style={{\r\n width: `calc(${\r\n 100 /\r\n (noOfColumns || (Math.min(...[4, gridOption.length || 0]) as number))\r\n }% - ${\r\n ((noOfColumns || (Math.min(...[4, gridOption.length || 0]) as number)) -\r\n 1) /\r\n (noOfColumns || (Math.min(...[4, gridOption.length || 0]) as number))\r\n }rem)`,\r\n minWidth: checkIfNullOrUndefined(minGraphWidth)\r\n ? '280px'\r\n : `${minGraphWidth}px`,\r\n }}\r\n >\r\n <GraphEl\r\n graph={graphType}\r\n graphDataConfiguration={graphConfig}\r\n graphData={\r\n transformDataForGraph(\r\n dataTransform\r\n ? transformDataForAggregation(\r\n filterData(data, dataFilters || []).filter(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (d: any) => d[columnGridBy] === el,\r\n ),\r\n dataTransform.keyColumn,\r\n dataTransform.aggregationColumnsSetting,\r\n )\r\n : filterData(data, dataFilters || []).filter(\r\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\r\n (d: any) => d[columnGridBy] === el,\r\n ),\r\n graphType,\r\n graphConfig,\r\n ) || []\r\n }\r\n debugMode={debugMode}\r\n settings={{\r\n ...(graphSettings || {}),\r\n ...advancedGraphSettings,\r\n theme: graphSettings?.theme || theme,\r\n width: undefined,\r\n height: undefined,\r\n relativeHeight: graphSettings?.relativeHeight || 0.67,\r\n minHeight: minGraphHeight,\r\n graphTitle: `${el}`,\r\n graphDescription: undefined,\r\n graphDownload: false,\r\n dataDownload: false,\r\n backgroundColor: undefined,\r\n padding: '0',\r\n footNote: undefined,\r\n sources: undefined,\r\n showColorScale:\r\n graphSettings?.showColorScale === false\r\n ? false\r\n : showCommonColorScale === false,\r\n }}\r\n readableHeader={readableHeader || []}\r\n />\r\n </div>\r\n ))}\r\n </div>\r\n </>\r\n ) : (\r\n <div className='w-full flex justify-center p-4'>\r\n <Spinner />\r\n </div>\r\n )}\r\n {graphSettings?.sources || graphSettings?.footNote ? (\r\n <GraphFooter\r\n styles={{\r\n footnote: graphSettings?.styles?.footnote,\r\n source: graphSettings?.styles?.source,\r\n }}\r\n classNames={{\r\n footnote: graphSettings?.classNames?.footnote,\r\n source: graphSettings?.classNames?.source,\r\n }}\r\n sources={graphSettings?.sources}\r\n footNote={graphSettings?.footNote}\r\n width={graphSettings?.width}\r\n />\r\n ) : null}\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n );\r\n}\r\n"],"names":["GriddedGraphs","props","graphSettings","dataSettings","filters","graphType","dataTransform","graphDataConfiguration","noOfColumns","columnGridBy","dataFilters","showCommonColorScale","minGraphHeight","minGraphWidth","debugMode","dataSelectionOptions","advancedDataSelectionOptions","readableHeader","noOfFiltersPerRow","uiMode","theme","data","setData","useState","dataFromFile","setDataFromFile","gridOption","setGridOption","graphParentDiv","useRef","graphConfig","setGraphConfig","filterSettings","setFilterSettings","advancedGraphSettings","setAdvancedGraphSettings","filterConfig","useMemo","filteredData","item","filter","flattenDeep","intersection","el","useEffect","fetchDataHandler","useCallback","d","fetchAndParseJSON","fetchAndTransformDataFromAPI","fetchAndParseCSV","fetchAndParseMultipleDataSources","transformColumnsToArray","gridValue","getUniqValue","newFilterSettings","transformDefaultValue","v","error","handleFilterChange","values","prev","f","jsx","jsxs","GraphHeader","Fragment","i","Label","DropdownSelect","opt","RadioGroup","selectedOption","j","RadioGroupItem","checkIfMultiple","createFilter","newGraphConfig","updatedConfig","CheckboxGroup","CheckboxGroupItem","ColorLegend","Colors","checkIfNullOrUndefined","GraphEl","transformDataForGraph","transformDataForAggregation","filterData","Spinner","GraphFooter"],"mappings":"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"}