From 5d20bc01d7b46c66660f6e76343abe70c971729b Mon Sep 17 00:00:00 2001
From: esikkala <esko.ikkala@aalto.fi>
Date: Mon, 14 Jun 2021 10:52:18 +0300
Subject: [PATCH] Update full text search layout

---
 .../perspectives/sampo/FullTextSearch.js      | 22 +++++++++++--------
 src/client/containers/SemanticPortal.js       | 20 +++++++----------
 src/client/translations/sampo/localeEN.json   | 13 +++++++++++
 3 files changed, 34 insertions(+), 21 deletions(-)

diff --git a/src/client/components/perspectives/sampo/FullTextSearch.js b/src/client/components/perspectives/sampo/FullTextSearch.js
index b27a44a5..3ff59b38 100644
--- a/src/client/components/perspectives/sampo/FullTextSearch.js
+++ b/src/client/components/perspectives/sampo/FullTextSearch.js
@@ -1,34 +1,37 @@
 import React from 'react'
 import PropTypes from 'prop-types'
 import { Route, Redirect } from 'react-router-dom'
+import { makeStyles } from '@material-ui/core/styles'
 import PerspectiveTabs from '../../main_layout/PerspectiveTabs'
 import ReactVirtualizedTable from '../../facet_results/ReactVirtualizedTable'
 import CalendarViewDayIcon from '@material-ui/icons/CalendarViewDay'
 
-const rootStyle = {
-  height: 'calc(100% - 8px)',
-  marginTop: 8,
-  marginLeft: 8,
-  marginRight: 8
-}
+const useStyles = makeStyles(theme => ({
+  root: props => ({
+    marginTop: theme.spacing(0.5),
+    height: `calc(100% - ${props.layoutConfig.tabHeight - 18}px)`
+  })
+}))
 
 /**
  * A component for displaying full text search results.
  */
 const FullTextSearch = props => {
-  const { rootUrl } = props
+  const { rootUrl, layoutConfig, screenSize } = props
+  const classes = useStyles(props)
   const perspectiveUrl = `${rootUrl}/full-text-search`
   return (
-    <div style={rootStyle}>
+    <div className={classes.root}>
       <PerspectiveTabs
         routeProps={props.routeProps}
-        screenSize={props.screenSize}
         tabs={[{
           id: 'table',
           label: 'table',
           icon: <CalendarViewDayIcon />,
           value: 0
         }]}
+        screenSize={screenSize}
+        layoutConfig={layoutConfig}
       />
       <Route
         exact path={perspectiveUrl}
@@ -41,6 +44,7 @@ const FullTextSearch = props => {
             <ReactVirtualizedTable
               fullTextSearch={props.fullTextSearch}
               sortFullTextResults={props.sortFullTextResults}
+              layoutConfig={props.layoutConfig}
             />
           )
         }}
diff --git a/src/client/containers/SemanticPortal.js b/src/client/containers/SemanticPortal.js
index e6d50069..3ad81847 100644
--- a/src/client/containers/SemanticPortal.js
+++ b/src/client/containers/SemanticPortal.js
@@ -294,18 +294,14 @@ const SemanticPortal = props => {
           <Route
             path={`${rootUrlWithLang}/full-text-search`}
             render={routeProps =>
-              <Grid container spacing={1} className={classes.mainContainer}>
-                <Grid item xs={12} className={classes.resultsContainer}>
-                  <FullTextSearch
-                    fullTextSearch={props.fullTextSearch}
-                    sortFullTextResults={props.sortFullTextResults}
-                    routeProps={routeProps}
-                    screenSize={screenSize}
-                    rootUrl={rootUrlWithLang}
-                    layoutConfig={layoutConfig}
-                  />
-                </Grid>
-              </Grid>}
+              <FullTextSearch
+                fullTextSearch={props.fullTextSearch}
+                sortFullTextResults={props.sortFullTextResults}
+                routeProps={routeProps}
+                screenSize={screenSize}
+                rootUrl={rootUrlWithLang}
+                layoutConfig={layoutConfig}
+              />}
           />
           {/* routes for faceted search perspectives */}
           {perspectiveConfig.map(perspective => {
diff --git a/src/client/translations/sampo/localeEN.json b/src/client/translations/sampo/localeEN.json
index 3361aa4b..25b8fe77 100644
--- a/src/client/translations/sampo/localeEN.json
+++ b/src/client/translations/sampo/localeEN.json
@@ -173,6 +173,19 @@
     }
   },
   "perspectives": {
+    "fullTextSearch": {
+      "properties": {
+        "prefLabel": {
+          "label": "Label"
+        },
+        "type": {
+          "label": "Type"
+        },
+        "note": {
+          "label": "Note"
+        }
+      }
+    },
     "perspective1": {
       "label": "Perspective 1",
       "facetResultsType": "manuscripts",
-- 
GitLab