From 803084cee8a142ecc4ebf58cb4ab67dfee5dd257 Mon Sep 17 00:00:00 2001 From: Michael Winsauer Date: Sat, 19 Jan 2019 11:32:03 +0100 Subject: [PATCH] Move pdf report into separate component --- service-website/src/components/PdfReport.js | 20 +++++++++++++++++++ .../src/components/SentimentAnalysis.js | 20 ++++--------------- 2 files changed, 24 insertions(+), 16 deletions(-) create mode 100644 service-website/src/components/PdfReport.js diff --git a/service-website/src/components/PdfReport.js b/service-website/src/components/PdfReport.js new file mode 100644 index 0000000..c0ca230 --- /dev/null +++ b/service-website/src/components/PdfReport.js @@ -0,0 +1,20 @@ +import React from "react"; +import PropTypes from "prop-types"; + +const PdfReport = ({pdfLink}) => { + if (pdfLink) { + return ( +
+ Download PDF report +
+ ); + } else { + return null; + } +}; + +PdfReport.propTypes = { + pdfLink: PropTypes.string.isRequired, +}; + +export default PdfReport; diff --git a/service-website/src/components/SentimentAnalysis.js b/service-website/src/components/SentimentAnalysis.js index 9a234d3..944cc51 100644 --- a/service-website/src/components/SentimentAnalysis.js +++ b/service-website/src/components/SentimentAnalysis.js @@ -1,7 +1,8 @@ import React, {Component} from "react"; -import SearchTermsInput from "./SearchTermsInput"; -import {Map} from "immutable"; import axios from "axios"; +import {Map} from "immutable"; +import PdfReport from "./PdfReport"; +import SearchTermsInput from "./SearchTermsInput"; class SentimentAnalysis extends Component { constructor(props, context) { @@ -85,19 +86,6 @@ class SentimentAnalysis extends Component { }); } - renderPdf() { - const pdfLink = this.state.pdfLink; - if (pdfLink) { - return ( -
- Download PDF report -
- ); - } else { - return null; - } - } - render() { return (
@@ -109,7 +97,7 @@ class SentimentAnalysis extends Component { onRemoveTerm={this.handleRemoveTerm}/> - {this.renderPdf()} +
); } -- 2.43.0