From 9c733766a97e00202fccef7040617ac3716d008c Mon Sep 17 00:00:00 2001 From: esikkala <esko.ikkala@aalto.fi> Date: Thu, 16 Dec 2021 17:23:37 +0200 Subject: [PATCH] ApexCharts config: support multiple result classes --- .../components/facet_results/ResultClassRoute.js | 13 +++++++++++-- src/client/components/main_layout/MuiIcon.js | 6 ++++-- src/client/library_configs/Leaflet/LeafletConfig.js | 6 ++++++ 3 files changed, 21 insertions(+), 4 deletions(-) diff --git a/src/client/components/facet_results/ResultClassRoute.js b/src/client/components/facet_results/ResultClassRoute.js index 626c8073..bce94611 100644 --- a/src/client/components/facet_results/ResultClassRoute.js +++ b/src/client/components/facet_results/ResultClassRoute.js @@ -213,7 +213,9 @@ const ResultClassRoute = props => { seriesTitle, stroke, fill, - createChartData + createChartData, + doNotRenderOnMount = false, + dropdownForResultClasses = false } = resultClassConfig const apexProps = { portalConfig, @@ -235,7 +237,14 @@ const ResultClassRoute = props => { seriesTitle, stroke, fill, - layoutConfig: props.layoutConfig + layoutConfig: props.layoutConfig, + doNotRenderOnMount, + dropdownForResultClasses + } + if (dropdownForResultClasses && has(resultClassConfig, 'resultClasses')) { + apexProps.resultClass = resultClassConfig.resultClasses[0] + apexProps.resultClasses = resultClassConfig.resultClasses + apexProps.dropdownForResultClasses = true } routeComponent = ( <Route diff --git a/src/client/components/main_layout/MuiIcon.js b/src/client/components/main_layout/MuiIcon.js index 0dc5307b..ea108b95 100644 --- a/src/client/components/main_layout/MuiIcon.js +++ b/src/client/components/main_layout/MuiIcon.js @@ -9,7 +9,8 @@ import { PieChart, CloudDownload, BubbleChart, - ShowChart + ShowChart, + FormatAlignJustify } from '@material-ui/icons' import has from 'lodash' @@ -24,7 +25,8 @@ const MuiIcon = props => { PieChart: PieChart, CloudDownload: CloudDownload, BubbleChart: BubbleChart, - ShowChart: ShowChart + ShowChart: ShowChart, + FormatAlignJustify: FormatAlignJustify } if (has(MuiIcons, props.iconName)) { const MuiIconComponent = MuiIcons[props.iconName] diff --git a/src/client/library_configs/Leaflet/LeafletConfig.js b/src/client/library_configs/Leaflet/LeafletConfig.js index a69cb071..e4845aab 100644 --- a/src/client/library_configs/Leaflet/LeafletConfig.js +++ b/src/client/library_configs/Leaflet/LeafletConfig.js @@ -14,6 +14,12 @@ export const createPopUpContentDefault = ({ data, resultClass }) => { link.textContent = data.prefLabel.prefLabel link.style.cssText = 'cursor: pointer; text-decoration: underline' h3.appendChild(link) + } else if (has(data, 'dataProviderUrl')) { + const link = document.createElement('a') + link.addEventListener('click', () => history.push(data.dataProviderUrl)) + link.textContent = data.prefLabel.prefLabel + link.style.cssText = 'cursor: pointer; text-decoration: underline' + h3.appendChild(link) } else { h3.textContent = data.prefLabel.prefLabel } -- GitLab