From 9ddc03aa3048d89cf6f01bafd911e2ff393469a5 Mon Sep 17 00:00:00 2001
From: esikkala <esko.ikkala@aalto.fi>
Date: Thu, 18 Mar 2021 10:05:06 +0200
Subject: [PATCH] Chart dialog: add line chart config

---
 src/client/components/facet_bar/ChartDialog.js  | 9 ++++++++-
 src/client/components/facet_bar/FacetHeader.js  | 1 +
 src/client/reducers/sampo/perspective1Facets.js | 5 +++++
 3 files changed, 14 insertions(+), 1 deletion(-)

diff --git a/src/client/components/facet_bar/ChartDialog.js b/src/client/components/facet_bar/ChartDialog.js
index e8477fc6..8ef4f3f1 100644
--- a/src/client/components/facet_bar/ChartDialog.js
+++ b/src/client/components/facet_bar/ChartDialog.js
@@ -20,8 +20,12 @@ const useStyles = makeStyles(theme => ({
 const ChartDialog = props => {
   const {
     fetchData, facetID, rawData, rawDataUpdateID, createChartData, facetClass,
-    resultClass, fetching, tooltip, title, xaxisTitle, yaxisTitle, seriesTitle
+    resultClass, fetching, tooltip, title, xaxisTitle, yaxisTitle, seriesTitle, lineChartConfig
   } = props
+  let xaxisType = null; let xaxisTickAmount = null; let stroke = null
+  if (lineChartConfig) {
+    ({ xaxisType, xaxisTickAmount, stroke } = lineChartConfig)
+  }
   const classes = useStyles()
   const [open, setOpen] = React.useState(false)
 
@@ -65,6 +69,9 @@ const ChartDialog = props => {
             xaxisTitle={xaxisTitle}
             yaxisTitle={yaxisTitle}
             seriesTitle={seriesTitle}
+            xaxisType={xaxisType}
+            xaxisTickAmount={xaxisTickAmount}
+            stroke={stroke}
           />
         </div>
       </GeneralDialog>
diff --git a/src/client/components/facet_bar/FacetHeader.js b/src/client/components/facet_bar/FacetHeader.js
index 83b5ec2e..81170948 100644
--- a/src/client/components/facet_bar/FacetHeader.js
+++ b/src/client/components/facet_bar/FacetHeader.js
@@ -326,6 +326,7 @@ class FacetHeader extends React.Component {
             xaxisTitle={intl.get(`facetBar.lineChart.${this.props.facetID}.xaxisTitle`)}
             yaxisTitle={intl.get(`facetBar.lineChart.${this.props.facetID}.yaxisTitle`)}
             seriesTitle={intl.get(`facetBar.lineChart.${this.props.facetID}.seriesTitle`)}
+            lineChartConfig={this.props.facet.lineChartConfig}
           />}
         {menuButtons.length > 0 &&
           <>
diff --git a/src/client/reducers/sampo/perspective1Facets.js b/src/client/reducers/sampo/perspective1Facets.js
index 7bc7c9eb..bd17a4d0 100644
--- a/src/client/reducers/sampo/perspective1Facets.js
+++ b/src/client/reducers/sampo/perspective1Facets.js
@@ -90,6 +90,11 @@ export const INITIAL_STATE = {
       sortButton: false,
       spatialFilterButton: false,
       lineChartButton: true,
+      lineChartConfig: {
+        xaxisType: 'category',
+        xaxisTickAmount: 30,
+        stroke: { width: 2 }
+      },
       isFetching: false,
       searchField: false,
       containerClass: 'four',
-- 
GitLab