From 7a979693746fa565929c14433f2f88da8d1bfa23 Mon Sep 17 00:00:00 2001 From: Frank Broda Date: Fri, 31 May 2024 11:26:27 +0200 Subject: [PATCH 01/11] Imprint and minor corrections --- ontology-manager-client/src/layout/footer.component.tsx | 7 +++---- .../pages/documentation/documentation-page.component.tsx | 2 +- .../src/pages/home/home-page.component.tsx | 2 +- 3 files changed, 5 insertions(+), 6 deletions(-) diff --git a/ontology-manager-client/src/layout/footer.component.tsx b/ontology-manager-client/src/layout/footer.component.tsx index 9adf326..2571936 100644 --- a/ontology-manager-client/src/layout/footer.component.tsx +++ b/ontology-manager-client/src/layout/footer.component.tsx @@ -9,7 +9,7 @@ import './footer.component.scss'; const Footer: React.FC = () => { return ( -
+
@@ -17,9 +17,8 @@ const Footer: React.FC = () => {

- Dolore proident ex qui. Proident voluptate consectetur ea culpa id. Elit aliqua magna veniam dolor laboris elit elit elit dolor. - Cillum sit velit pariatur eiusmod ad Lorem sunt exercitation sunt Cillum sit velit pariatur eiusmod ad Lorem sunt exercitation sunt - m sit velit pariatur eiusmod ad Lorem sunt exercitation sunt Cillum sit velit pariatur eiusmod ad Lorem sunt exercitation sunt + The Natural-One-Health service (n1h.org) is developed and operated by the Leibniz Institute of Plant Biochemistry. See + the imprint for legal details.

diff --git a/ontology-manager-client/src/pages/documentation/documentation-page.component.tsx b/ontology-manager-client/src/pages/documentation/documentation-page.component.tsx index ee592d8..70f5bde 100644 --- a/ontology-manager-client/src/pages/documentation/documentation-page.component.tsx +++ b/ontology-manager-client/src/pages/documentation/documentation-page.component.tsx @@ -23,7 +23,7 @@ const DocumentationPageComponent: React.FC = () => {

- One Health is developed and curated by GLACIER (German Latin-American Center for Infection and Epidemiology Research) is an international multidisciplinary consortium that aims to level regional disparities in Latin America by strengthening surveillance and response to emerging infectious diseases and developing new vaccines and therapies. GLACIER is made up of more than 30 cooperating institutions from nine countries (Germany, Mexico, Cuba, Costa Rica, Nicaragua, Honduras, El Salvador, Panama, and Guatemala). + One Health is developed and curated by GLACIER (German Latin-American Center for Infection and Epidemiology Research & Training) is an international multidisciplinary consortium that aims to level regional disparities in Latin America by strengthening surveillance and response to emerging infectious diseases and developing new vaccines and therapies. GLACIER is made up of more than 30 cooperating institutions from nine countries (Germany, Mexico, Cuba, Costa Rica, Nicaragua, Honduras, El Salvador, Panama, and Guatemala). For further information, please visit the GLACIER consortium’s official website About | GLACIER One Health Project

diff --git a/ontology-manager-client/src/pages/home/home-page.component.tsx b/ontology-manager-client/src/pages/home/home-page.component.tsx index 8d9ea7a..8133e19 100644 --- a/ontology-manager-client/src/pages/home/home-page.component.tsx +++ b/ontology-manager-client/src/pages/home/home-page.component.tsx @@ -100,7 +100,7 @@ A platform for biochemical data exchange and virtual repository to empower drug
- GLACIER (German Latin-American Center for Infection and Epidemiology Research & Training) is an international multidisciplinary consortium that aims to level regional disparities in Latin America by strengthening surveillance and response to emerging infectious diseases and developing new vaccines and therapies. GLACIER is made up of more than 30 cooperating institutions from nine countries (Germany, Mexico, Cuba, Costa Rica, Nicaragua, Honduras, El Salvador, Panama, and Guatemala). + GLACIER (German Latin-American Center for Infection and Epidemiology Research & Training) is an international multidisciplinary consortium that aims to level regional disparities in Latin America by strengthening surveillance and response to emerging infectious diseases and developing new vaccines and therapies. GLACIER is made up of more than 30 cooperating institutions from nine countries (Germany, Mexico, Cuba, Costa Rica, Nicaragua, Honduras, El Salvador, Panama, and Guatemala). For further information, please visit the GLACIER consortium’s official website About | GLACIER One Health Project From 9de063565f37001922fcd1da2d5269f8a40dc3ca Mon Sep 17 00:00:00 2001 From: cav-ipb Date: Sat, 1 Jun 2024 17:36:41 +0200 Subject: [PATCH 02/11] Fix footer styles --- .../src/layout/footer.component.scss | 3 +++ .../src/layout/footer.component.tsx | 12 ++++++------ 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/ontology-manager-client/src/layout/footer.component.scss b/ontology-manager-client/src/layout/footer.component.scss index 6d6ebcb..9d382c2 100644 --- a/ontology-manager-client/src/layout/footer.component.scss +++ b/ontology-manager-client/src/layout/footer.component.scss @@ -7,4 +7,7 @@ position: fixed; bottom: 0; z-index: 1000; + width: 100%; + padding: 10px; + margin: 0; } \ No newline at end of file diff --git a/ontology-manager-client/src/layout/footer.component.tsx b/ontology-manager-client/src/layout/footer.component.tsx index 2571936..2999385 100644 --- a/ontology-manager-client/src/layout/footer.component.tsx +++ b/ontology-manager-client/src/layout/footer.component.tsx @@ -9,13 +9,13 @@ import './footer.component.scss'; const Footer: React.FC = () => { return ( -
-
+
+
- logo + logo
-
+

The Natural-One-Health service (n1h.org) is developed and operated by the Leibniz Institute of Plant Biochemistry. See the imprint for legal details. @@ -23,8 +23,8 @@ const Footer: React.FC = () => {

-
- logo +
+ logo logo logo logo From d8ee1021a14d1c1d49dc39cc8f844157a2fc6cb3 Mon Sep 17 00:00:00 2001 From: cav-ipb Date: Sat, 1 Jun 2024 17:52:49 +0200 Subject: [PATCH 03/11] Home page tidy up --- .../src/layout/app.component.scss | 2 +- .../src/pages/home/home-page.component.tsx | 162 +++++++++--------- 2 files changed, 85 insertions(+), 79 deletions(-) diff --git a/ontology-manager-client/src/layout/app.component.scss b/ontology-manager-client/src/layout/app.component.scss index 86ca95f..1714d36 100644 --- a/ontology-manager-client/src/layout/app.component.scss +++ b/ontology-manager-client/src/layout/app.component.scss @@ -2,7 +2,7 @@ .content { background-color: white; - padding-top: $app-header-height + 30px; + padding-top: $app-header-height; padding-bottom: 80px; max-width: 1920px; flex: 1; diff --git a/ontology-manager-client/src/pages/home/home-page.component.tsx b/ontology-manager-client/src/pages/home/home-page.component.tsx index 8133e19..35f4a49 100644 --- a/ontology-manager-client/src/pages/home/home-page.component.tsx +++ b/ontology-manager-client/src/pages/home/home-page.component.tsx @@ -1,5 +1,4 @@ import heroSectionImage from '../../assets/img/hero-section-bg.png'; -import { InputText } from 'primereact/inputtext'; import logoGlacier from '../../assets/logo_glacier.png'; import logoIpb from '../../assets/logo_ipb.png'; import { Button } from 'primereact/button'; @@ -8,7 +7,6 @@ import neighborhoodExplorerImage from "../../assets/img/neighborhood-explorer.pn import coocurrencesSummaryImage from "../../assets/img/cooccurrences-summary.png"; import contributeImage from "../../assets/img/contribute.jpeg"; import { useNavigate } from 'react-router-dom'; -import { Message } from 'primereact/message'; import './home-page.component.scss'; import { Tag } from 'primereact/tag'; @@ -17,103 +15,111 @@ const React = require('react'); const HomePageComponent: React.FC = () => { const navigate = useNavigate(); + const heroSectionRow = () => { - const neighborhoodExplorerCardHeader = ( - Neighborhood Explorer - ); - - const coOccurrencesSummaryCardHeader = ( - Co-Occurrences Summary - ); - - const contributeCardHeader = ( - Contribute - ); - - const neighborhoodExplorerCardFooter = ( - <> + const neighborhoodExplorerCardHeader = ( + Neighborhood Explorer + ); + + const neighborhoodExplorerCardFooter = ( - - ) - - const coOccurrencesSummaryCardFooter = ( - <> - - - ) - - const contributeCardFooter = ( - <> + ); + + + const coOccurrencesSummaryCardHeader = ( + Co-Occurrences Summary + ); + + const coOccurrencesSummaryCardFooter = ( + + ); + + + const contributeCardHeader = ( + Contribute + ); + + const contributeCardFooter = ( - - ) - - return ( -
+ ); + + return (
-
- -

-Empowering drug development with integrated biochemical data -

-A platform for biochemical data exchange and virtual repository to empower drug development - - -
- - -
- -

- Explore the connections found in scientific data between species, natural products and diseases -

-
-
-
- -

- Discover co-occurrences of scientific concepts found in literature and datasets -

-
-
-
- -

- Contribute to the platform by uploading and analyzing your publications and datasets -

- -
+
+ +

+ Empowering the research on plant-derived natural products for the treatment of diseases +

+ +

+ using an advanced data collection, exchange and analysis platform, with focus on the flora and epidemiological needs of Latin-America +

+ +
+
+ +

+ Explore the connections found in scientific data between species, natural products and diseases +

+
+
+
+ +

+ Discover co-occurrences of scientific concepts found in literature and datasets +

+
+
+
+ +

+ Contribute to the platform by uploading and analyzing your publications and datasets +

+ +
+
-
+
-
+ developed and curated by + logo + logo -
- - developed and curated by - logo - logo + +
+ + GLACIER (German Latin-American Center for Infection and Epidemiology Research & Training) is an international multidisciplinary consortium that aims to level regional disparities in Latin America by strengthening surveillance and response to emerging infectious diseases and developing new vaccines and therapies. GLACIER is made up of more than 30 cooperating institutions from nine countries (Germany, Mexico, Cuba, Costa Rica, Nicaragua, Honduras, El Salvador, Panama, and Guatemala). + For further information, please visit the GLACIER consortium’s official website About | GLACIER One Health Project + +
-
- - GLACIER (German Latin-American Center for Infection and Epidemiology Research & Training) is an international multidisciplinary consortium that aims to level regional disparities in Latin America by strengthening surveillance and response to emerging infectious diseases and developing new vaccines and therapies. GLACIER is made up of more than 30 cooperating institutions from nine countries (Germany, Mexico, Cuba, Costa Rica, Nicaragua, Honduras, El Salvador, Panama, and Guatemala). -For further information, please visit the GLACIER consortium’s official website About | GLACIER One Health Project - -
Your SVG
+ ); + } + + + + + + + + + return ( +
+ {heroSectionRow()}
); }; From 04eafd86f466bcd73238a8d88b9f08ecad4a3170 Mon Sep 17 00:00:00 2001 From: cav-ipb Date: Sat, 1 Jun 2024 18:08:04 +0200 Subject: [PATCH 04/11] Page container style fixes --- ontology-manager-client/src/Style.scss | 11 ++++++++++- .../src/layout/footer.component.tsx | 2 +- .../documentation/documentation-page.component.tsx | 2 +- .../src/pages/home/home-page.component.tsx | 2 +- .../metadata/data-load/data-load-page.component.tsx | 2 +- .../entity-type-form-page.component.tsx | 2 +- .../link-type-form/link-type-form-page.component.tsx | 2 +- .../metadata-overview/ontology-overview.component.tsx | 2 +- .../compound-search-page.component.tsx | 2 +- .../general-search/general-search-page.component.tsx | 2 +- .../co-ocurrence-summary-page.component.tsx | 2 +- .../neighborhood-explorer-page.component.tsx | 2 +- 12 files changed, 21 insertions(+), 12 deletions(-) diff --git a/ontology-manager-client/src/Style.scss b/ontology-manager-client/src/Style.scss index e38ced1..225e660 100644 --- a/ontology-manager-client/src/Style.scss +++ b/ontology-manager-client/src/Style.scss @@ -49,9 +49,18 @@ max-width: 0px; } -.page-container { +.page-container-wide { + padding-top: 30px; padding-left: 5%; padding-right: 5%; + padding-bottom: 30px; +} + +.page-container-narrow { + padding-top: 30px; + padding-left: 15%; + padding-right: 15%; + padding-bottom: 30px; } .one-health-panel { diff --git a/ontology-manager-client/src/layout/footer.component.tsx b/ontology-manager-client/src/layout/footer.component.tsx index 2999385..0e4ef9b 100644 --- a/ontology-manager-client/src/layout/footer.component.tsx +++ b/ontology-manager-client/src/layout/footer.component.tsx @@ -18,7 +18,7 @@ const Footer: React.FC = () => {

The Natural-One-Health service (n1h.org) is developed and operated by the Leibniz Institute of Plant Biochemistry. See - the imprint for legal details. + the imprint for legal details.

diff --git a/ontology-manager-client/src/pages/documentation/documentation-page.component.tsx b/ontology-manager-client/src/pages/documentation/documentation-page.component.tsx index 70f5bde..6b20370 100644 --- a/ontology-manager-client/src/pages/documentation/documentation-page.component.tsx +++ b/ontology-manager-client/src/pages/documentation/documentation-page.component.tsx @@ -5,7 +5,7 @@ import { PageTitle } from '../../components'; const React = require('react'); const DocumentationPageComponent: React.FC = () => { - return
+ return
diff --git a/ontology-manager-client/src/pages/home/home-page.component.tsx b/ontology-manager-client/src/pages/home/home-page.component.tsx index 35f4a49..96244ae 100644 --- a/ontology-manager-client/src/pages/home/home-page.component.tsx +++ b/ontology-manager-client/src/pages/home/home-page.component.tsx @@ -99,7 +99,7 @@ const HomePageComponent: React.FC = () => {
-
+
Your SVG { return ( -
+
diff --git a/ontology-manager-client/src/pages/metadata/entity-type-form/entity-type-form-page.component.tsx b/ontology-manager-client/src/pages/metadata/entity-type-form/entity-type-form-page.component.tsx index 40ba364..9400e1a 100644 --- a/ontology-manager-client/src/pages/metadata/entity-type-form/entity-type-form-page.component.tsx +++ b/ontology-manager-client/src/pages/metadata/entity-type-form/entity-type-form-page.component.tsx @@ -159,7 +159,7 @@ const EntityTypeFormPageComponent: React.FC = () => { return ( -
+
diff --git a/ontology-manager-client/src/pages/metadata/link-type-form/link-type-form-page.component.tsx b/ontology-manager-client/src/pages/metadata/link-type-form/link-type-form-page.component.tsx index c8e5ed3..716938a 100644 --- a/ontology-manager-client/src/pages/metadata/link-type-form/link-type-form-page.component.tsx +++ b/ontology-manager-client/src/pages/metadata/link-type-form/link-type-form-page.component.tsx @@ -111,7 +111,7 @@ const LinkTypeFormPageComponent: React.FC = () => { return ( -
+
diff --git a/ontology-manager-client/src/pages/metadata/metadata-overview/ontology-overview.component.tsx b/ontology-manager-client/src/pages/metadata/metadata-overview/ontology-overview.component.tsx index dd74982..3f1d46f 100644 --- a/ontology-manager-client/src/pages/metadata/metadata-overview/ontology-overview.component.tsx +++ b/ontology-manager-client/src/pages/metadata/metadata-overview/ontology-overview.component.tsx @@ -111,7 +111,7 @@ const MetadataOverviewPageComponent: React.FC = () => { return ( -
+
{ } - return
+ return
diff --git a/ontology-manager-client/src/pages/search/general-search/general-search-page.component.tsx b/ontology-manager-client/src/pages/search/general-search/general-search-page.component.tsx index b7f2af0..bf47f8d 100644 --- a/ontology-manager-client/src/pages/search/general-search/general-search-page.component.tsx +++ b/ontology-manager-client/src/pages/search/general-search/general-search-page.component.tsx @@ -120,7 +120,7 @@ export const GeneralSearchPageComponent: React.FC = () => { return {truncateString(result.name, 150)} } - return
+ return
diff --git a/ontology-manager-client/src/pages/visualization/co-ocurrences-summary/co-ocurrence-summary-page.component.tsx b/ontology-manager-client/src/pages/visualization/co-ocurrences-summary/co-ocurrence-summary-page.component.tsx index 662ce79..32229dc 100644 --- a/ontology-manager-client/src/pages/visualization/co-ocurrences-summary/co-ocurrence-summary-page.component.tsx +++ b/ontology-manager-client/src/pages/visualization/co-ocurrences-summary/co-ocurrence-summary-page.component.tsx @@ -323,7 +323,7 @@ const CoOcurrenceSummaryPageComponent: React.FC = () => { return ( <> -
+
diff --git a/ontology-manager-client/src/pages/visualization/neighborhood-explorer/neighborhood-explorer-page.component.tsx b/ontology-manager-client/src/pages/visualization/neighborhood-explorer/neighborhood-explorer-page.component.tsx index 9d1201f..fd9bdeb 100644 --- a/ontology-manager-client/src/pages/visualization/neighborhood-explorer/neighborhood-explorer-page.component.tsx +++ b/ontology-manager-client/src/pages/visualization/neighborhood-explorer/neighborhood-explorer-page.component.tsx @@ -66,7 +66,7 @@ const NeighborhoodExplorerPageComponent: React.FC = () => { }; return ( -
+
From d2ebb16af01d5e641e5e22154c59e040df4d5a97 Mon Sep 17 00:00:00 2001 From: cav-ipb Date: Sat, 1 Jun 2024 19:19:30 +0200 Subject: [PATCH 05/11] Fix tool disclaimer dialog --- .../src/features/pages/contact.component.tsx | 16 ------ .../pages/documentation-component.tsx | 7 --- .../src/features/pages/home-component.tsx | 49 ------------------- .../src/features/pages/index.ts | 3 -- .../features/pages/not-found-component.tsx | 7 --- .../co-ocurrence-summary-page.component.tsx | 7 +-- .../neighborhood-explorer-page.component.tsx | 7 +-- .../src/utils/constants/mesages.tsx | 5 ++ ontology-manager-client/src/utils/index.ts | 3 +- 9 files changed, 11 insertions(+), 93 deletions(-) delete mode 100644 ontology-manager-client/src/features/pages/contact.component.tsx delete mode 100644 ontology-manager-client/src/features/pages/documentation-component.tsx delete mode 100644 ontology-manager-client/src/features/pages/home-component.tsx delete mode 100644 ontology-manager-client/src/features/pages/index.ts delete mode 100644 ontology-manager-client/src/features/pages/not-found-component.tsx create mode 100644 ontology-manager-client/src/utils/constants/mesages.tsx diff --git a/ontology-manager-client/src/features/pages/contact.component.tsx b/ontology-manager-client/src/features/pages/contact.component.tsx deleted file mode 100644 index 0827114..0000000 --- a/ontology-manager-client/src/features/pages/contact.component.tsx +++ /dev/null @@ -1,16 +0,0 @@ -import { Image } from 'primereact/image'; -import homeBackground from '../../resources/Picture1.svg'; -import heroSectionImage from '../../resources/img/hero-section-bg.png'; -import { InputText } from 'primereact/inputtext'; - -const React = require('react'); - -const ContactPage: React.FC = () => { - return ( -
- Contact Page -
- ); -}; - -export default ContactPage; diff --git a/ontology-manager-client/src/features/pages/documentation-component.tsx b/ontology-manager-client/src/features/pages/documentation-component.tsx deleted file mode 100644 index 9a11e69..0000000 --- a/ontology-manager-client/src/features/pages/documentation-component.tsx +++ /dev/null @@ -1,7 +0,0 @@ -const React = require('react'); - -const Documentation: React.FC = () => { - return <>This is the documentation page; -}; - -export default Documentation; diff --git a/ontology-manager-client/src/features/pages/home-component.tsx b/ontology-manager-client/src/features/pages/home-component.tsx deleted file mode 100644 index fa1dd78..0000000 --- a/ontology-manager-client/src/features/pages/home-component.tsx +++ /dev/null @@ -1,49 +0,0 @@ -import { Image } from 'primereact/image'; -import homeBackground from '../../resources/Picture1.svg'; -import heroSectionImage from '../../resources/img/hero-section-bg.png'; -import { InputText } from 'primereact/inputtext'; - -const React = require('react'); - -const Home: React.FC = () => { - return ( -
-
-
-
- -

- Empowering Drug Research with Comprehensive Biochemical Data -

-

- Discover our collection of biochemical data to support groundbreaking research in drug development -

-
- -
- - - - -
-
-
-
-
- Your SVG -
-
- -
- ); -}; - -export default Home; diff --git a/ontology-manager-client/src/features/pages/index.ts b/ontology-manager-client/src/features/pages/index.ts deleted file mode 100644 index b80a85e..0000000 --- a/ontology-manager-client/src/features/pages/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -export { default as NotFound } from './not-found-component'; -export { default as Documentation } from './documentation-component'; -export { default as Home } from './home-component'; diff --git a/ontology-manager-client/src/features/pages/not-found-component.tsx b/ontology-manager-client/src/features/pages/not-found-component.tsx deleted file mode 100644 index 2e7c7ab..0000000 --- a/ontology-manager-client/src/features/pages/not-found-component.tsx +++ /dev/null @@ -1,7 +0,0 @@ -const React = require('react'); - -const NotFound: React.FC = () => { - return <>404 Not found page; -}; - -export default NotFound; diff --git a/ontology-manager-client/src/pages/visualization/co-ocurrences-summary/co-ocurrence-summary-page.component.tsx b/ontology-manager-client/src/pages/visualization/co-ocurrences-summary/co-ocurrence-summary-page.component.tsx index 32229dc..c3536c9 100644 --- a/ontology-manager-client/src/pages/visualization/co-ocurrences-summary/co-ocurrence-summary-page.component.tsx +++ b/ontology-manager-client/src/pages/visualization/co-ocurrences-summary/co-ocurrence-summary-page.component.tsx @@ -28,6 +28,7 @@ import { ILocalStorageStore, ITutorialStore, LOCAL_STORAGE_KEYS, STORES } from ' import * as XLSX from 'xlsx'; import { useNavigate } from 'react-router-dom'; +import { toolDisclaimer } from '../../../utils'; const React = require('react'); @@ -69,11 +70,7 @@ const CoOcurrenceSummaryPageComponent: React.FC = () => { confirmDialog({ header: 'Disclaimer', icon: 'pi pi-exclamation-triangle', - message: ( -

- This tool shows connections of existing data which could be erroneous, biased
and not necessarily the most relevant one for your scientific question since it
was generated with an automatic process.
We are actively working to improve the data quality in the platform. -

- ), + message: toolDisclaimer, acceptLabel: "Understood", rejectLabel: "Back", accept: () => { diff --git a/ontology-manager-client/src/pages/visualization/neighborhood-explorer/neighborhood-explorer-page.component.tsx b/ontology-manager-client/src/pages/visualization/neighborhood-explorer/neighborhood-explorer-page.component.tsx index fd9bdeb..7807f88 100644 --- a/ontology-manager-client/src/pages/visualization/neighborhood-explorer/neighborhood-explorer-page.component.tsx +++ b/ontology-manager-client/src/pages/visualization/neighborhood-explorer/neighborhood-explorer-page.component.tsx @@ -11,6 +11,7 @@ import NeighborhoodExplorerTour from "../../../features/modules/visualization/ne import { ILocalStorageStore, ITutorialStore, LOCAL_STORAGE_KEYS, STORES } from "../../../stores"; import { confirmDialog } from "primereact/confirmdialog"; import { useNavigate } from "react-router-dom"; +import { toolDisclaimer } from "../../../utils"; const React = require('react'); @@ -48,11 +49,7 @@ const NeighborhoodExplorerPageComponent: React.FC = () => { confirmDialog({ header: 'Disclaimer', icon: 'pi pi-exclamation-triangle', - message: ( -

- This tool shows connections of existing data which could be erroneous, biased
and not necessarily the most relevant one for your scientific question since it
was generated with an automatic process.
We are actively working to improve the data quality in the platform. -

- ), + message: toolDisclaimer, acceptLabel: "Understood", rejectLabel: "Back", accept: () => { diff --git a/ontology-manager-client/src/utils/constants/mesages.tsx b/ontology-manager-client/src/utils/constants/mesages.tsx new file mode 100644 index 0000000..092c953 --- /dev/null +++ b/ontology-manager-client/src/utils/constants/mesages.tsx @@ -0,0 +1,5 @@ +export const toolDisclaimer =

+At the moment, this tool is still primarily focused on the analysis of data of Cuban plants. Hence, the output for plants from other geographical regions might be weaker.
+This tool shows connections of available data which could be erroneous, biased and not necessarily the most relevant one for your scientific question
since it was extracted from available data sources with an automatic process. +
We are actively working to expand the data basis (please contribute!) and improve the data quality of the platform. +

\ No newline at end of file diff --git a/ontology-manager-client/src/utils/index.ts b/ontology-manager-client/src/utils/index.ts index 715006e..65f3154 100644 --- a/ontology-manager-client/src/utils/index.ts +++ b/ontology-manager-client/src/utils/index.ts @@ -1,3 +1,4 @@ export { flatten, constructHttpParams } from "./flatten"; export { getRandomColor, darkenHexColor,getContrastColor} from "./color"; -export { truncateString } from "./string"; \ No newline at end of file +export { truncateString } from "./string"; +export {toolDisclaimer } from './constants/mesages'; \ No newline at end of file From 94ee2723914b2f8a058c1a292237fac943a8eab4 Mon Sep 17 00:00:00 2001 From: cav-ipb Date: Sat, 1 Jun 2024 19:26:59 +0200 Subject: [PATCH 06/11] Update documentation text --- .../pages/documentation/documentation-page.component.tsx | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/ontology-manager-client/src/pages/documentation/documentation-page.component.tsx b/ontology-manager-client/src/pages/documentation/documentation-page.component.tsx index 6b20370..eb575c6 100644 --- a/ontology-manager-client/src/pages/documentation/documentation-page.component.tsx +++ b/ontology-manager-client/src/pages/documentation/documentation-page.component.tsx @@ -13,17 +13,20 @@ const DocumentationPageComponent: React.FC = () => {

- Create a digital data exchange platform and a virtual repository for the surveillance of emerging infectious diseases and anti-infectives + The creation of an advanced data collection and analysis software tool dedicated to empower the joined research and knowledge exchange of the GLACIER consortium (and beyond) on plant-derived natural products and their usage for the treatment of infectious diseases, with focus on the flora and epidemiological needs of Latin-America.

+ GLACIER (German Latin-American Center for Infection and Epidemiology Research & Training) is an international multidisciplinary consortium that aims to level regional disparities in Latin America by strengthening surveillance and response to emerging infectious diseases and developing new vaccines and therapies. GLACIER is made up of more than 30 cooperating institutions from nine countries (Germany, Mexico, Cuba, Costa Rica, Nicaragua, Honduras, El Salvador, Panama, and Guatemala). +For further information, please visit the GLACIER consortium’s official website About | GLACIER One Health Project

- One Health is a project of the Leibniz Institute for Plant Biochemistry at Weinberg 3, 06120 Halle (Saale), Germany + This data collection and analysis software tool is a project developed and curated by the Leibniz Institute of Plant Biochemistry (IPB, Weinberg 3, D-06120 Halle (Saale), Germany) in scope of the GLACIER consortium.

- One Health is developed and curated by GLACIER (German Latin-American Center for Infection and Epidemiology Research & Training) is an international multidisciplinary consortium that aims to level regional disparities in Latin America by strengthening surveillance and response to emerging infectious diseases and developing new vaccines and therapies. GLACIER is made up of more than 30 cooperating institutions from nine countries (Germany, Mexico, Cuba, Costa Rica, Nicaragua, Honduras, El Salvador, Panama, and Guatemala). + The development of this tool, as part of the activities of the GLACIER consortium, is funded by the DAAD, Germany (Deutscher Akademischer Austauschdienst/German Academic Exchange Service; funding code DAAD 57592717).

+ GLACIER (German Latin-American Center for Infection and Epidemiology Research & Training) is an international multidisciplinary consortium that aims to level regional disparities in Latin America by strengthening surveillance and response to emerging infectious diseases and developing new vaccines and therapies. GLACIER is made up of more than 30 cooperating institutions from nine countries (Germany, Mexico, Cuba, Costa Rica, Nicaragua, Honduras, El Salvador, Panama, and Guatemala). For further information, please visit the GLACIER consortium’s official website About | GLACIER One Health Project

From df946e21505881acda8289bdf151ed1a01759576 Mon Sep 17 00:00:00 2001 From: cav-ipb Date: Sat, 1 Jun 2024 23:07:52 +0200 Subject: [PATCH 07/11] Update logo --- ontology-manager-client/public/favicon.ico | Bin 170179 -> 261182 bytes ontology-manager-client/public/index.html | 3 ++- ontology-manager-client/public/logo192.png | Bin 5347 -> 29123 bytes ontology-manager-client/public/logo512.png | Bin 9664 -> 92665 bytes ontology-manager-client/public/manifest.json | 4 ++-- .../src/assets/oh_logo.svg | 12 ++++++++++++ .../src/layout/header.component.tsx | 3 ++- 7 files changed, 18 insertions(+), 4 deletions(-) create mode 100644 ontology-manager-client/src/assets/oh_logo.svg diff --git a/ontology-manager-client/public/favicon.ico b/ontology-manager-client/public/favicon.ico index d11bdd6bc142b8a2389c6c877ff4a756b2ce92c6..8ded74e3c33765f1c1f49b941429618f1ce1100e 100644 GIT binary patch literal 261182 zcmeI5>AM}pk>;7{|6!i_I3N2{&ok5A(`~zLw{5()ZLqOvY_RbH-tERVUH~JE*ktzA z2Afq#NUQ=RB(wkmA;czDA+d=~h#di9GhS-q7kS=u^A>f^sXEI&SGtk+Ik)Q6smjWX z%r_!3GBR?PUH+T>y|v3O_WytF^7nuFyIuZ=o&UXkxVFoGPuDr!<&nSJ<$wOeF8=ZF z_OFN(6bK3g1%d)WfuKN8ASe(N2nqxRf&xK-pg>R{C=e6~3QT(n{OxalEB^AgzgB+u zEmBY*D6r#D;IAz_*D0~EA1JRwt+*#BFdhnkX+C*+>a~}OHCr|nmuy;BoOAE>#o6|` zc+)L@?U~oN<+r+QpL8L<1O3Q;*%pH_#9D@QufvKi|aQ*Ph&lU%)x}f;bMTa|% zKQR9{#YYz&S$y0u436^;*LGcaMDcI)X8FBeU2=M{_UVV(MK8<$_78Cq6bK4T2?c~} za0!l)(I30`D97=~?Z~xmAMW|YB}W$@G(NzyC*QHOUGBhln-p;p6qr&9{N=AnkG|=t zjl~D%A69&1!EDEAH!OGh%`tAW{GTs4xH$0od2Jm%@I9qX8ZQe9wC!H^zwngn;2&9V zgz4VB<#Z=(>-r}zIi~oR3l4GJUSy8BGEpLqL4nayKv>)U&RfMEi%xWXn(?#nIp`65 z|38!8zq$ERuZZ3^+FC{KL4lxvY}#|yT~+*x*}uW!pm;7n|4AEzgYWb2U+n~!{vXs2 z3Iqj4LjjF{AAEUh@$Y62$8J`}<*>e^<1<%wqmAcDe{PNMM^m%NH7GE%DImM}oOM?g z@0t5+w}%f4%jJCF8yd$y_R8~4c)fpSw?foDC@@?K{H^6x!Z`c$SDa9M*zDr?rj#)` z%Yc60Imd4~1@6&xKR3ljrz$+nU+)j=k+_ zFTZ@{YF8$13gmi8bHRLxTc?P(VH-f4Jv5_XP!8-LN+m zzcDw4U+Vey#hULy+BTk@*%V-{hSqER
Y$8cQp-8tWgHQzJ4Uq= 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

~CrnH&SfKkZf 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 aMF8nL$|N|n3cUc3K6h>z-mKBKi})Yy*y?rw literal 9664 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 b{|{}U^kRn2wo}j7|0ATu<;8xA7zX}7|B6mN diff --git a/ontology-manager-client/public/manifest.json b/ontology-manager-client/public/manifest.json index f01493f..512fe51 100644 --- a/ontology-manager-client/public/manifest.json +++ b/ontology-manager-client/public/manifest.json @@ -1,6 +1,6 @@ { - "short_name": "React App", - "name": "Create React App Sample", + "short_name": "One Health", + "name": "Natural One Health", "icons": [ { "src": "favicon.ico", diff --git a/ontology-manager-client/src/assets/oh_logo.svg b/ontology-manager-client/src/assets/oh_logo.svg new file mode 100644 index 0000000..1211090 --- /dev/null +++ b/ontology-manager-client/src/assets/oh_logo.svg @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/ontology-manager-client/src/layout/header.component.tsx b/ontology-manager-client/src/layout/header.component.tsx index 86457f6..0b5cd67 100644 --- a/ontology-manager-client/src/layout/header.component.tsx +++ b/ontology-manager-client/src/layout/header.component.tsx @@ -3,6 +3,7 @@ import { Menubar } from 'primereact/menubar'; import { MenuItem } from 'primereact/menuitem'; import { useNavigate } from 'react-router-dom'; import oneHealthLogo from '../assets/logo_one_health.png'; +import logo from '../assets/oh_logo.svg'; import './header.component.scss'; const Header: React.FC = () => { @@ -118,7 +119,7 @@ const Header: React.FC = () => { ]; const start = ( - logo + logo ); return ( From 854fd6489d2343835752ee33de697cf6390a9684 Mon Sep 17 00:00:00 2001 From: cav-ipb Date: Mon, 3 Jun 2024 16:41:52 +0200 Subject: [PATCH 08/11] Replace plaint cypher queries with Cypher DSL queries --- .../data/interfaces/IEntityRepository.java | 1 - .../n4j/repository/N4JEntityRepository.java | 177 ++++++++++++------ .../n4j/repository/N4JOntologyRepository.java | 144 +++++--------- .../services/NaturalProductService.java | 26 +-- .../main/resources/application-dev.properties | 3 + 5 files changed, 180 insertions(+), 171 deletions(-) diff --git a/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/data/interfaces/IEntityRepository.java b/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/data/interfaces/IEntityRepository.java index 1732662..c6a5626 100644 --- a/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/data/interfaces/IEntityRepository.java +++ b/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/data/interfaces/IEntityRepository.java @@ -8,5 +8,4 @@ public interface IEntityRepository extends IGraphRepository{ List GetByIds(List ids); - List GetIds(List uuids); } diff --git a/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/n4j/repository/N4JEntityRepository.java b/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/n4j/repository/N4JEntityRepository.java index d13dfca..54f341d 100644 --- a/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/n4j/repository/N4JEntityRepository.java +++ b/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/n4j/repository/N4JEntityRepository.java @@ -7,8 +7,8 @@ import ipbhalle.de.ontologymanagerserver.n4j.models.N4JEntityType; import ipbhalle.de.ontologymanagerserver.n4j.models.N4JPropertyInfo; import ipbhalle.de.ontologymanagerserver.n4j.models.N4JPropertyValue; +import org.neo4j.cypherdsl.core.*; import org.neo4j.driver.internal.value.MapValue; -import org.neo4j.driver.util.Pair; import org.springframework.data.neo4j.core.Neo4jTemplate; import org.springframework.stereotype.Repository; @@ -50,33 +50,61 @@ public GraphDTO GetAdjacentNodes(String nodeId, List nodesIds) { HashSet existentNodes = new HashSet<>(nodesIds); - // Get adjacent nodes to the expanded node - String adjacentEntitiesQuery = "match(n) - [r] - (m:Entity) where id(n) = " - + nodeId + - " with m, keys(properties(m)) AS attributeKeys UNWIND attributeKeys AS key return toString(id(m)) as id, labels(m) as labels, collect({name: key, value: properties(m)[key]}) AS properties;"; - var adjacentEntities = neo4jTemplate.findAll(adjacentEntitiesQuery, N4JEntity.class); - // From all adjacent nodes get the ones that are not in the graph already - var newEntities = adjacentEntities.stream().filter(x -> !existentNodes.contains(x.getId())).toList(); - var newEntitiesIds = newEntities.stream().map(N4JEntity::getId).toList(); + Parameter nodeIdParam = Cypher.parameter("nodeId", nodeId); + Node nodeX = Cypher.node("Entity").named("x"); + Node nodeY = Cypher.node("Entity").named("y"); + Statement adjacentEntitiesQueryDSL = Cypher + .match(nodeX.relationshipBetween(nodeY)) + .where(nodeX.property("OHUUID").isEqualTo(nodeIdParam)) + .with( + nodeY, + Functions.keys(Functions.properties(nodeY)).as("attributeKeys") + ) + .unwind(Cypher.name("attributeKeys")).as("key") + .returning( + nodeY.property("OHUUID").as("id"), + Functions.labels(nodeY).as("labels"), + Functions.collect(Cypher.mapOf("name", Cypher.name("key"), "value", nodeY.property(Cypher.name("key")))).as("properties") + ) + .build(); - String newOutgoingLinksQuery = - "with [" + String.join(", ", newEntitiesIds) + "] as newNodesIds, " + - "[" + String.join(", ", nodesIds) + "] as nodesIds " + - "match(n) - [r] -> (m:Entity) where " + - "(id(n) in newNodesIds or id(n) in nodesIds) and id(m) in newNodesIds " + - "with toString(id(n)) as source, toString(id(m)) as target, type(r) as label, count(r) as value" + - " return source, target, label, value;"; + var adjacentEntities = neo4jTemplate.findAll(adjacentEntitiesQueryDSL, N4JEntity.class); - String newIncomingLinksQuery = - "with [" + String.join(", ", newEntitiesIds) + "] as newNodesIds, " + - "[" + String.join(", ", nodesIds) + "] as nodesIds " + - "match (m:Entity) - [r] -> (n) where " + - "id(n) in nodesIds and id(m) in newNodesIds " + - "with toString(id(n)) as target, toString(id(m)) as source, type(r) as label, count(r) as value" + - " return source, target, label, value;"; + // From all adjacent nodes get the ones that are not in the graph already + var newEntities = adjacentEntities.stream().filter(x -> !existentNodes.contains(x.getId())).toList(); + var newEntitiesIds = newEntities.stream().map(N4JEntity::getId).toList(); + Parameter> newNodesIdsParam = Cypher.parameter("newNodesIds", newEntitiesIds); + Parameter> oldNodesIdsParam = Cypher.parameter("oldNodesIds", nodesIds); + Relationship linkR = nodeX.relationshipTo(nodeY).named("r"); + + Statement newOutgoingLinksQuery = Cypher + .match(linkR) + .where( + (nodeX.property("OHUUID").in(newNodesIdsParam).or(nodeX.property("OHUUID").in(oldNodesIdsParam))) + .and(nodeY.property("OHUUID").in(newNodesIdsParam)) + ) + .returning( + nodeX.property("OHUUID").as("source"), + nodeY.property("OHUUID").as("target"), + Functions.type(linkR).as("label"), + Functions.count(nodeX).as("value") + ).build(); + + Statement newIncomingLinksQuery = Cypher + .match(linkR) + .where( + nodeX.property("OHUUID").in(newNodesIdsParam) + .and(nodeY.property("OHUUID").in(oldNodesIdsParam)) + ) + .returning( + nodeX.property("OHUUID").as("source"), + nodeY.property("OHUUID").as("target"), + Functions.type(linkR).as("label"), + Functions.count(nodeX).as("value") + ).build(); var outgoingLinks = neo4jTemplate.findAll(newOutgoingLinksQuery, GraphLinkDTO.class); var incomingLinks = neo4jTemplate.findAll(newIncomingLinksQuery, GraphLinkDTO.class); @@ -114,17 +142,39 @@ public GraphDTO GetAdjacentNodes(String nodeId, List nodesIds) { @Override public EntityDTO GetNode(String nodeId) { - String nodeQuery = "match (m:Entity) where id(m) = " - + nodeId + - " with m, keys(properties(m)) AS attributeKeys UNWIND attributeKeys AS key return toString(id(m)) as id, labels(m) as labels, collect({name: key, value: properties(m)[key]}) AS properties;"; - - var entity = neo4jTemplate.findOne(nodeQuery,new HashMap<>(), N4JEntity.class); - - String referencesQuery = "match (m:Entity) -[r:FROM_SOURCE]-> (n:Source) where id(m) = " + nodeId + - " return r.source as source, r.url as sourceUrl, r.externalid as externalId"; - - var references = neo4jTemplate.findAll(referencesQuery, ReferenceDTO.class); + Parameter nodeIdParam = Cypher.parameter("nodeId", nodeId); + Node entityNode = Cypher.node("Entity").named("e"); + Statement getNodeQuery = Cypher + .match(entityNode) + .where(entityNode.property("OHUUID").isEqualTo(nodeIdParam)) + .with( + entityNode, + Functions.keys(Functions.properties(entityNode)).as("attributeKeys") + ) + .unwind(Cypher.name("attributeKeys")).as("key") + .returning( + entityNode.property("OHUUID").as("id"), + Functions.labels(entityNode).as("labels"), + Functions.collect(Cypher.mapOf("name", Cypher.name("key"), "value", entityNode.property(Cypher.name("key")))).as("properties") + ) + .build(); + + var entity = neo4jTemplate.findOne(getNodeQuery, new HashMap<>(), N4JEntity.class); + + Node sourceNode = Cypher.node("Source").named("s"); + Relationship fromSourceRelationship = entityNode.relationshipTo(sourceNode, "FROM_SOURCE").named("r"); + + Statement getReferencesQuery = Cypher + .match(fromSourceRelationship) + .where(entityNode.property("OHUUID").isEqualTo(nodeIdParam)) + .returning( + fromSourceRelationship.property("source").as("source"), + fromSourceRelationship.property("url").as("sourceUrl"), + fromSourceRelationship.property("externalid").as("externalId") + ).build(); + + var references = neo4jTemplate.findAll(getReferencesQuery, ReferenceDTO.class); if (entity.isEmpty()) return null; @@ -177,12 +227,26 @@ public GraphLinkDTO GetLink(String linkId) { @Override public List GetLinks(String sourceId, String targetId, String type) { - String query = "match (n)-[r]-(m) where id(n) = " + sourceId + " and id(m) = " + targetId; - if (type != null) - query += " and type(r) = '" + type + "'"; - query += " return toString(id(n)) as rightEntity, toString(id(m)) as leftEntity, type(r) as type, r.source as sourceName, r.sourceurl as sourceUrl"; - return neo4jTemplate.findAll(query, LinkDTO.class); + Parameter sourceIdParam = Cypher.parameter("sourceId", sourceId); + Parameter targetIdParam = Cypher.parameter("targetId", targetId); + + Node sourceNode = Cypher.node("Entity").named("x"); + Node targetNode = Cypher.node("Entity").named("y"); + Relationship referenceRelationship = sourceNode.relationshipBetween(targetNode).named("r"); + + Statement getLinkReferencesQuery = Cypher + .match(referenceRelationship) + .where(sourceNode.property("OHUUID").isEqualTo(sourceIdParam).and(targetNode.property("OHUUID").isEqualTo(targetIdParam))) + .returning( + sourceNode.property("OHUUID").as("leftEntity"), + sourceNode.property("OHUUID").as("rightEntity"), + Functions.type(referenceRelationship).as("type"), + referenceRelationship.property("source").as("sourceName"), + referenceRelationship.property("sourceurl").as("sourceUrl") + ).build(); + + return neo4jTemplate.findAll(getLinkReferencesQuery, LinkDTO.class); } @Override @@ -199,13 +263,26 @@ public List GetByIds(List ids) { types.put(x.getId(), x.getName()); }); - var stringifyIds = ids.stream().map(x -> "'" + x + "'").toList(); - String query = - "with [" + String.join(", ", stringifyIds) + "] as matches" + - " match(m:Entity) where m.OHUUID in matches" + - " with m, keys(properties(m)) AS attributeKeys UNWIND attributeKeys AS key return toString(id(m)) as id, labels(m) as labels, collect({name: key, value: properties(m)[key]}) AS properties;"; - var matchedEntities = neo4jTemplate.findAll(query, N4JEntity.class); + + Parameter> nodeIdsParam = Cypher.parameter("nodeIds", ids); + Node node = Cypher.node("Entity").named("n"); + Statement queryDSL = Cypher + .match(node) + .where(node.property("OHUUID").in(nodeIdsParam)) + .with( + node, + Functions.keys(Functions.properties(node)).as("attributeKeys") + ) + .unwind(Cypher.name("attributeKeys")).as("key") + .returning( + node.property("OHUUID").as("id"), + Functions.labels(node).as("labels"), + Functions.collect(Cypher.mapOf("name", Cypher.name("key"), "value", node.property(Cypher.name("key")))).as("properties") + ) + .build(); + + var matchedEntities = neo4jTemplate.findAll(queryDSL, N4JEntity.class); var newNodes = matchedEntities.stream().map(n -> { @@ -238,16 +315,4 @@ public List GetByIds(List ids) { return newNodes; } - public List GetIds(List uuids){ - var stringifyIds = uuids.stream().map(x -> "'" + x + "'").toList(); - - var query = - "with [" + String.join(", ", stringifyIds) + "] as matches" + - " match(m:`Natural Product`) where m.OHUUID in matches" + - " return m.Name as name, m.InChI as inChI, m.`InChI Key` as inChIKey, m.`SMILES` as smiles, m.`Molecular Formula` as molecularFormula, toFloat(m.`Molecular Weight`) as molecularWeight, m.`Cas Registry Number` as casRegistryNumber, m.`IUPAC Name` as iupacName , toString(id(m)) as id"; - - - return neo4jTemplate.findAll(query, NaturalProductDTO.class); - - } } diff --git a/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/n4j/repository/N4JOntologyRepository.java b/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/n4j/repository/N4JOntologyRepository.java index f64f601..f0103ae 100644 --- a/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/n4j/repository/N4JOntologyRepository.java +++ b/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/n4j/repository/N4JOntologyRepository.java @@ -3,13 +3,11 @@ import ipbhalle.de.ontologymanagerserver.data.dtos.*; import ipbhalle.de.ontologymanagerserver.data.interfaces.IOntologyRepository; import ipbhalle.de.ontologymanagerserver.n4j.models.N4JEntityType; -import org.neo4j.driver.QueryConfig; +import org.neo4j.cypherdsl.core.*; + import org.springframework.data.neo4j.core.Neo4jOperations; import org.springframework.stereotype.Repository; - - import java.util.ArrayList; -import java.util.HashMap; import java.util.HashSet; import java.util.List; import java.util.stream.Stream; @@ -17,7 +15,7 @@ @Repository public class N4JOntologyRepository implements IOntologyRepository { - private Neo4jOperations neo4jOperations; + private final Neo4jOperations neo4jOperations; public N4JOntologyRepository(Neo4jOperations neo4jOperations) { this.neo4jOperations = neo4jOperations; @@ -33,65 +31,44 @@ public List GetAsGraph() { @Override public GraphDTO FindCoOccurrences(CoOcurrenceQuery query) { - StringBuilder result = new StringBuilder(); - - result.append("MATCH "); - + // TODO: Move this input sanitation to service layer :) query.getLeftTypeQuery().setFilters( query.getLeftTypeQuery().getFilters().stream().filter(x -> x.getValue() != null && !x.getValue().isEmpty()).toList()); query.getRightTypeQuery().setFilters( query.getRightTypeQuery().getFilters().stream().filter(x -> x.getValue() != null && !x.getValue().isEmpty()).toList()); - var leftEntityType = neo4jOperations.findById(query.getLeftTypeQuery().getType(), N4JEntityType.class).get(); var rightEntityType = neo4jOperations.findById(query.getRightTypeQuery().getType(), N4JEntityType.class).get(); + Node nodeX = Cypher.node(leftEntityType.getName()).named("x"); + Node nodeY = Cypher.node(rightEntityType.getName()).named("y"); + Relationship coOccurrenceRelationship = nodeX.relationshipBetween(nodeY).named("r"); - // match the type - result.append("(x:`").append(leftEntityType.getName()).append("`"); - result.append(")"); - // add the relationship - result.append("- [r] - "); - result.append("(y:`").append(rightEntityType.getName()).append("`"); - result.append(")"); - - if ((query.getLeftTypeQuery().getFilters() != null && !query.getLeftTypeQuery().getFilters().isEmpty()) - || (query.getRightTypeQuery().getFilters() != null && !query.getRightTypeQuery().getFilters().isEmpty())) - result.append(" WHERE "); + var conditions = Conditions.isTrue(); - Stream leftEntityCriteria = Stream.empty(); - - if (query.getLeftTypeQuery().getFilters() != null && !query.getLeftTypeQuery().getFilters().isEmpty()){ - leftEntityCriteria = query.getLeftTypeQuery().getFilters().stream().map( - x -> String.format("x.`%s` =~ '(?i).*%s.*'", x.getProperty(), x.getValue())); + for (var filter: query.getLeftTypeQuery().getFilters()){ + conditions = conditions.and( + nodeX.property(filter.getProperty()).matches("(?i).*" + filter.getValue() + ".*") + ); } - Stream rightEntityCriteria = Stream.empty(); - if (query.getRightTypeQuery().getFilters() != null && !query.getRightTypeQuery().getFilters().isEmpty()){ - rightEntityCriteria = query.getRightTypeQuery().getFilters().stream().map( - x -> String.format("y.`%s` =~ '(?i).*%s.*'", x.getProperty(), x.getValue())); + for (var filter: query.getRightTypeQuery().getFilters()){ + conditions = conditions.and( + nodeY.property(filter.getProperty()).matches("(?i).*" + filter.getValue() + ".*") + ); } - var filters = Stream.concat(leftEntityCriteria, rightEntityCriteria).toList(); - - result.append(String.join(" AND ", filters)); - - result.append(" WITH type(r) AS label, count(r) AS value, "); - - var leftNodeIdentifier = !query.getLeftTypeQuery().getGroupBy().isEmpty() ? - String.format("x.`%s`", query.getLeftTypeQuery().getGroupBy()) : - String.format("x.`%s`", leftEntityType.getLabel().getName()); - - var rightNodeIdentifier = !query.getRightTypeQuery().getGroupBy().isEmpty() ? - String.format("y.`%s`", query.getRightTypeQuery().getGroupBy()) : - String.format("y.`%s`", rightEntityType.getLabel().getName()); - - result.append(leftNodeIdentifier).append(" AS source, "); - result.append(rightNodeIdentifier).append(" AS target "); + var getCoOccurrencesQuery = Cypher + .match(coOccurrenceRelationship) + .where(conditions) + .returning( + Functions.type(coOccurrenceRelationship).as("label"), + Functions.count(coOccurrenceRelationship.asExpression()).as("value"), + nodeX.property(query.getLeftTypeQuery().getGroupBy().isEmpty() ? leftEntityType.getLabel().getName() : query.getLeftTypeQuery().getGroupBy()).as("source"), + nodeY.property(query.getRightTypeQuery().getGroupBy().isEmpty() ? rightEntityType.getLabel().getName() : query.getRightTypeQuery().getGroupBy()).as("target") + ).build(); - result.append("RETURN source, target, label, value"); - - var links = neo4jOperations.findAll(result.toString(), GraphLinkDTO.class); + var links = neo4jOperations.findAll(getCoOccurrencesQuery, GraphLinkDTO.class); var sourceNodeLabels = new HashSet<>(links.stream().map(GraphLinkDTO::getSource).toList()); var targetNodeLabels = new HashSet<>(links.stream().map(GraphLinkDTO::getTarget).toList()); @@ -109,65 +86,46 @@ public GraphDTO FindCoOccurrences(CoOcurrenceQuery query) { } public List FindCoOccurrencesDetails(CoOcurrenceQuery query) { - StringBuilder result = new StringBuilder(); - - result.append("MATCH "); - - query.getLeftTypeQuery().setFilters( query.getLeftTypeQuery().getFilters().stream().filter(x -> !x.getValue().isEmpty()).toList()); - query.getRightTypeQuery().setFilters( query.getRightTypeQuery().getFilters().stream().filter(x -> !x.getValue().isEmpty()).toList()); + query.getLeftTypeQuery().setFilters( query.getLeftTypeQuery().getFilters().stream().filter(x -> x.getValue() != null && !x.getValue().isEmpty()).toList()); + query.getRightTypeQuery().setFilters( query.getRightTypeQuery().getFilters().stream().filter(x -> x.getValue() != null && !x.getValue().isEmpty()).toList()); var leftEntityType = neo4jOperations.findById(query.getLeftTypeQuery().getType(), N4JEntityType.class).get(); var rightEntityType = neo4jOperations.findById(query.getRightTypeQuery().getType(), N4JEntityType.class).get(); - // match the type - result.append("(x:`").append(leftEntityType.getName()).append("`"); - result.append(")"); - // add the relationship - result.append("- [r] - "); - result.append("(y:`").append(rightEntityType.getName()).append("`"); - result.append(")"); + Node nodeX = Cypher.node(leftEntityType.getName()).named("x"); + Node nodeY = Cypher.node(rightEntityType.getName()).named("y"); + Relationship coOccurrenceRelationship = nodeX.relationshipBetween(nodeY).named("r"); - if ((query.getLeftTypeQuery().getFilters() != null && !query.getLeftTypeQuery().getFilters().isEmpty()) - || (query.getRightTypeQuery().getFilters() != null && !query.getRightTypeQuery().getFilters().isEmpty())) - result.append(" WHERE "); - Stream leftEntityCriteria = Stream.empty(); + var conditions = Conditions.isTrue(); - if (query.getLeftTypeQuery().getFilters() != null && !query.getLeftTypeQuery().getFilters().isEmpty()){ - leftEntityCriteria = query.getLeftTypeQuery().getFilters().stream().map( - x -> String.format("x.`%s` =~ '(?i).*%s.*'", x.getProperty(), x.getValue())); + for (var filter: query.getLeftTypeQuery().getFilters()){ + conditions = conditions.and( + nodeX.property(filter.getProperty()).matches("(?i).*" + filter.getValue() + ".*") + ); } - Stream rightEntityCriteria = Stream.empty(); - if (query.getRightTypeQuery().getFilters() != null && !query.getRightTypeQuery().getFilters().isEmpty()){ - rightEntityCriteria = query.getRightTypeQuery().getFilters().stream().map( - x -> String.format("y.`%s` =~ '(?i).*%s.*'", x.getProperty(), x.getValue())); + for (var filter: query.getRightTypeQuery().getFilters()){ + conditions = conditions.and( + nodeY.property(filter.getProperty()).matches("(?i).*" + filter.getValue() + ".*") + ); } - var filters = Stream.concat(leftEntityCriteria, rightEntityCriteria).toList(); - - result.append(String.join(" AND ", filters)); - - - result.append(" WITH type(r) AS type, r.source as sourceName, r.sourceurl as sourceUrl, "); - - var leftNodeIdentifier = - String.format("x.`%s`", leftEntityType.getLabel().getName()); - - var rightNodeIdentifier = - String.format("y.`%s`", rightEntityType.getLabel().getName()); - - result.append(leftNodeIdentifier).append(" AS leftEntity, "); - result.append(rightNodeIdentifier).append(" AS rightEntity "); - - - result.append("RETURN leftEntity, rightEntity, type, sourceName, sourceUrl"); + var getCoOccurrencesDetailsQuery = Cypher + .match(coOccurrenceRelationship) + .where(conditions) + .returning( + nodeX.property(leftEntityType.getLabel().getName()).as("leftEntity"), + nodeY.property(rightEntityType.getLabel().getName()).as("rightEntity"), + Functions.type(coOccurrenceRelationship).as("type"), + coOccurrenceRelationship.property("source").as("sourceName"), + coOccurrenceRelationship.property("sourceurl").as("sourceUrl") - var query2 = result.toString(); + ).build(); - var links = neo4jOperations.findAll(query2, LinkDTO.class); + var links = neo4jOperations.findAll(getCoOccurrencesDetailsQuery, LinkDTO.class); return links; } diff --git a/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/services/NaturalProductService.java b/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/services/NaturalProductService.java index f6c2c07..9b63a55 100644 --- a/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/services/NaturalProductService.java +++ b/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/services/NaturalProductService.java @@ -31,11 +31,7 @@ public NaturalProductDTO GetBySMILES(String value) { throw new RuntimeException(); } - var result = this.naturalProductRepository.GetBySMILES(value); - if (result == null) - return null; - var ids = new String[] { result.getId()} ; - return this.entityRepository.GetIds(Arrays.stream(ids).toList()).get(0); + return this.naturalProductRepository.GetBySMILES(value); } @Override @@ -43,11 +39,7 @@ public NaturalProductDTO GetByInChI(String value) { if (StringProcessing.isSQLInjection(value)) { throw new RuntimeException(); } - var result = this.naturalProductRepository.GetByInChI(value); - if (result == null) - return null; - var ids = new String[] { result.getId()} ; - return this.entityRepository.GetIds(Arrays.stream(ids).toList()).get(0); + return this.naturalProductRepository.GetByInChI(value); } @Override @@ -55,11 +47,7 @@ public NaturalProductDTO GetByInChIKey(String value) { if (StringProcessing.isSQLInjection(value)) { throw new RuntimeException(); } - var result = this.naturalProductRepository.GetByInChIKey(value); - if (result == null) - return null; - var ids = new String[] { result.getId()} ; - return this.entityRepository.GetIds(Arrays.stream(ids).toList()).get(0); + return this.naturalProductRepository.GetByInChIKey(value); } @Override @@ -69,9 +57,7 @@ public List GetBySubstructure(String smiles, int take, int pa } page = 0; take = Math.min(take, 1000); - var result = this.naturalProductRepository.GetBySubstructure(smiles, take, page); - var ids = result.stream().map(NaturalProductDTO::getId); - return this.entityRepository.GetIds(ids.toList()); + return this.naturalProductRepository.GetBySubstructure(smiles, take, page); } @Override @@ -82,8 +68,6 @@ public List GetBySimilarity(String smiles, int threshold, int if (threshold < 0 || threshold > 100) threshold = 80; limit = Math.min(limit, 1000); - var result = this.naturalProductRepository.GetBySimilarity(smiles, threshold, limit); - var ids = result.stream().map(NaturalProductDTO::getId); - return this.entityRepository.GetIds(ids.toList()); + return this.naturalProductRepository.GetBySimilarity(smiles, threshold, limit); } } diff --git a/ontology-manager-server/src/main/resources/application-dev.properties b/ontology-manager-server/src/main/resources/application-dev.properties index 9bd982a..e550789 100644 --- a/ontology-manager-server/src/main/resources/application-dev.properties +++ b/ontology-manager-server/src/main/resources/application-dev.properties @@ -12,6 +12,9 @@ spring.jpa.hibernate.ddl-auto=update spring.jpa.show-sql=true spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.PostgreSQLDialect +logging.level.org.springframework.data.neo4j.cypher.deprecation=OFF +logging.level.org.springframework.data.neo4j.cypher.unrecognized=OFF + spring.datasource.hikari.maximum-pool-size=20 spring.datasource.hikari.minimum-idle=10 From 73734e951e19757d588057028adc593a1b29170d Mon Sep 17 00:00:00 2001 From: cav-ipb Date: Tue, 4 Jun 2024 11:03:44 +0200 Subject: [PATCH 09/11] Add excel export to neighborhood explorer --- .../neighborhood-explorer.component.tsx | 18 +++++++- .../cytoscape-interactive-chart.component.tsx | 7 ++++ .../modules/visualization/entity-service.ts | 19 ++++++++- .../api/EntityController.java | 8 ++++ .../data/interfaces/IEntityRepository.java | 2 + .../n4j/repository/N4JEntityRepository.java | 42 +++++++++++++++++++ .../services/EntityService.java | 5 +++ .../services/interfaces/IEntityService.java | 5 +++ 8 files changed, 104 insertions(+), 2 deletions(-) diff --git a/ontology-manager-client/src/features/modules/visualization/neighborhood-explorer/neighborhood-explorer.component.tsx b/ontology-manager-client/src/features/modules/visualization/neighborhood-explorer/neighborhood-explorer.component.tsx index 8936321..e6d4740 100644 --- a/ontology-manager-client/src/features/modules/visualization/neighborhood-explorer/neighborhood-explorer.component.tsx +++ b/ontology-manager-client/src/features/modules/visualization/neighborhood-explorer/neighborhood-explorer.component.tsx @@ -15,7 +15,7 @@ import { DataView } from 'primereact/dataview'; import { IQueryGraph } from '../../../query-history/query-history-graph/graph-query'; import { MessageServiceContext } from '../../../shared/messages'; import { dependencyFactory } from '../../../shared/injection'; -import { IEntityTypeService, IGeneralSearchService, IGraphVisualizationHistoryService, SERVICES } from '../../../../services'; +import { IEntityService, IEntityTypeService, IGeneralSearchService, IGraphVisualizationHistoryService, SERVICES } from '../../../../services'; import { ISavedGraphVisualization } from '../visualization-history/models/saved-graph-visualization'; import { ConfirmDialog, confirmDialog } from 'primereact/confirmdialog'; import { Divider } from 'primereact/divider'; @@ -30,6 +30,7 @@ import { IconField } from "primereact/iconfield"; import { InputIcon } from "primereact/inputicon"; import { IEntityType } from '../../metadata/entity-types'; import { Checkbox } from 'primereact/checkbox'; +import * as XLSX from 'xlsx'; const React = require('react'); @@ -62,6 +63,7 @@ const NeighborhoodExplorerComponent: React.FC = ({graphServi const myComponentRef : RefObject = useRef(null); + const entityService = dependencyFactory.get(SERVICES.IEntityService); const [elements, setElements] = useState([]); @@ -134,6 +136,20 @@ const NeighborhoodExplorerComponent: React.FC = ({graphServi ) const downloadOptions = [ + { + label: 'XLXS', + command: async () => { + + const results = await entityService.getGraphReferences(myComponentRef.current!.getNodes(), messageService!); + + + const ws = XLSX.utils.json_to_sheet(results); + const wb = XLSX.utils.book_new(); + XLSX.utils.book_append_sheet(wb, ws, 'Sheet1'); + XLSX.writeFile(wb, 'co-ocurrences.xlsx'); + + } + }, { label: 'Cytoscape JSON', command: () => { diff --git a/ontology-manager-client/src/features/shared/cytoscape-interactive-chart/cytoscape-interactive-chart.component.tsx b/ontology-manager-client/src/features/shared/cytoscape-interactive-chart/cytoscape-interactive-chart.component.tsx index 4276483..398d886 100644 --- a/ontology-manager-client/src/features/shared/cytoscape-interactive-chart/cytoscape-interactive-chart.component.tsx +++ b/ontology-manager-client/src/features/shared/cytoscape-interactive-chart/cytoscape-interactive-chart.component.tsx @@ -162,6 +162,13 @@ class CytoscapeInteractiveChartComponent extends Component x.group==="nodes" && x.data.id !== HIGHLIGHT) + .map((x:any) => x.data.id); + return nodes; + } + getElements() { const elements = this.cytoscapeCore.json().elements; return JSON.stringify(elements); diff --git a/ontology-manager-client/src/services/modules/visualization/entity-service.ts b/ontology-manager-client/src/services/modules/visualization/entity-service.ts index e43bac9..27f5165 100644 --- a/ontology-manager-client/src/services/modules/visualization/entity-service.ts +++ b/ontology-manager-client/src/services/modules/visualization/entity-service.ts @@ -1,12 +1,29 @@ import { injectable } from "inversify"; import { GraphService } from "../../interfaces/graph-service"; +import { MessageService } from "../../../features/shared/messages"; +import { IHttpResponseHandlerSettings, OnReadByIdResponsesHandler } from "../../../features/shared/http/http-responses-handler"; +import axios from "axios"; @injectable() export class IEntityService extends GraphService{ url: string = "api/entity" entityTitle: string = "Entity"; + + getGraphReferences(nodes: string[], messageService: MessageService, httpResponseHandlerSettings? : IHttpResponseHandlerSettings) : any { + return this.handleRequest( + axios.post( + `${this.url}/get-graph-references`, nodes + ), + new OnReadByIdResponsesHandler("graph", messageService, httpResponseHandlerSettings) + ); + } + + }; @injectable() -export class EntityService extends IEntityService {} \ No newline at end of file +export class EntityService extends IEntityService { + + +} \ No newline at end of file diff --git a/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/api/EntityController.java b/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/api/EntityController.java index 2bca2aa..3ca1953 100644 --- a/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/api/EntityController.java +++ b/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/api/EntityController.java @@ -4,8 +4,11 @@ import ipbhalle.de.ontologymanagerserver.data.dtos.CoOcurrenceQuery; import ipbhalle.de.ontologymanagerserver.data.dtos.EntityDTO; import ipbhalle.de.ontologymanagerserver.data.dtos.GraphDTO; +import ipbhalle.de.ontologymanagerserver.data.dtos.LinkDTO; import ipbhalle.de.ontologymanagerserver.services.interfaces.IEntityService; import ipbhalle.de.ontologymanagerserver.services.interfaces.IOntologyService; +import org.springframework.http.HttpStatus; +import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; import java.util.List; @@ -22,4 +25,9 @@ public EntityController(IEntityService entityService) { this.entityService = entityService; } + @PostMapping("get-graph-references") + public ResponseEntity> GetGraphReferences(@RequestBody List nodes) { + return new ResponseEntity<>(entityService.GetGraphReferences(nodes), HttpStatus.OK); + } + } diff --git a/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/data/interfaces/IEntityRepository.java b/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/data/interfaces/IEntityRepository.java index c6a5626..e3e2582 100644 --- a/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/data/interfaces/IEntityRepository.java +++ b/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/data/interfaces/IEntityRepository.java @@ -1,6 +1,7 @@ package ipbhalle.de.ontologymanagerserver.data.interfaces; import ipbhalle.de.ontologymanagerserver.data.dtos.EntitySearchResultDTO; +import ipbhalle.de.ontologymanagerserver.data.dtos.LinkDTO; import ipbhalle.de.ontologymanagerserver.data.dtos.NaturalProductDTO; import java.util.List; @@ -8,4 +9,5 @@ public interface IEntityRepository extends IGraphRepository{ List GetByIds(List ids); + List GetGraphReferences(List nodesIds); } diff --git a/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/n4j/repository/N4JEntityRepository.java b/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/n4j/repository/N4JEntityRepository.java index 54f341d..7c6df84 100644 --- a/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/n4j/repository/N4JEntityRepository.java +++ b/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/n4j/repository/N4JEntityRepository.java @@ -140,6 +140,48 @@ public GraphDTO GetAdjacentNodes(String nodeId, List nodesIds) { return new GraphDTO(newNodes, links); } + @Override + public List GetGraphReferences(List nodesIds){ + HashMap labels = new HashMap<>(); + + var nodeTypes = neo4jTemplate.findAll(N4JEntityType.class); + + Parameter> nodesIdsParam = Cypher.parameter("nodesIds", nodesIds); + Node nodeX = Cypher.node("Entity").named("x"); + Node nodeY = Cypher.node("Entity").named("y"); + Relationship referenceRelationship = nodeX.relationshipTo(nodeY).named("r"); + + Case nodeXLabelCaseStatement = + Case.create(nodeX.property("__type")); + + Case nodeYLabelCaseStatement = + Case.create(nodeY.property("__type")); + + for (var entityType: nodeTypes) { + nodeXLabelCaseStatement = nodeXLabelCaseStatement + .when(Cypher.literalOf(entityType.getId())) + .then(nodeX.property(entityType.getLabel().getName())); + + nodeYLabelCaseStatement = nodeYLabelCaseStatement + .when(Cypher.literalOf(entityType.getId())) + .then(nodeY.property(entityType.getLabel().getName())); + } + + Statement getGraphReferencesQuery = Cypher + .match(referenceRelationship) + .where(nodeX.property("OHUUID").in(nodesIdsParam).and(nodeY.property("OHUUID").in(nodesIdsParam))) + .returning( + nodeXLabelCaseStatement.as("leftEntity"), + nodeYLabelCaseStatement.as("rightEntity"), + Functions.type(referenceRelationship).as("type"), + referenceRelationship.property("source").as("sourceName"), + referenceRelationship.property("sourceurl").as("sourceUrl") + ).build(); + + return neo4jTemplate.findAll(getGraphReferencesQuery, LinkDTO.class); + + } + @Override public EntityDTO GetNode(String nodeId) { diff --git a/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/services/EntityService.java b/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/services/EntityService.java index 332020c..d36b915 100644 --- a/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/services/EntityService.java +++ b/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/services/EntityService.java @@ -44,4 +44,9 @@ public GraphLinkDTO GetLink(String nodeId) { public List GetLinks(String sourceId, String targetId, String type) { return entityRepository.GetLinks(sourceId, targetId, type); } + + @Override + public List GetGraphReferences(List nodesIds){ + return entityRepository.GetGraphReferences(nodesIds); + } } diff --git a/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/services/interfaces/IEntityService.java b/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/services/interfaces/IEntityService.java index 1a7bfa4..bd380d4 100644 --- a/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/services/interfaces/IEntityService.java +++ b/ontology-manager-server/src/main/java/ipbhalle/de/ontologymanagerserver/services/interfaces/IEntityService.java @@ -1,4 +1,9 @@ package ipbhalle.de.ontologymanagerserver.services.interfaces; +import ipbhalle.de.ontologymanagerserver.data.dtos.LinkDTO; + +import java.util.List; + public interface IEntityService extends IGraphService{ + List GetGraphReferences(List nodesIds); } From 789037bf7f8cae9a525eaeb09d218dea29d17e46 Mon Sep 17 00:00:00 2001 From: cav-ipb Date: Wed, 5 Jun 2024 23:38:20 +0200 Subject: [PATCH 10/11] Default option for download option --- .../neighborhood-explorer.component.tsx | 13 +++++++++++++ .../co-ocurrence-summary-page.component.tsx | 11 +++++++++++ 2 files changed, 24 insertions(+) diff --git a/ontology-manager-client/src/features/modules/visualization/neighborhood-explorer/neighborhood-explorer.component.tsx b/ontology-manager-client/src/features/modules/visualization/neighborhood-explorer/neighborhood-explorer.component.tsx index e6d4740..5a579d1 100644 --- a/ontology-manager-client/src/features/modules/visualization/neighborhood-explorer/neighborhood-explorer.component.tsx +++ b/ontology-manager-client/src/features/modules/visualization/neighborhood-explorer/neighborhood-explorer.component.tsx @@ -479,6 +479,8 @@ const NeighborhoodExplorerComponent: React.FC = ({graphServi onClick={ async (e) => { const elements = myComponentRef.current!.getElements(); + + savedVisualization = { id: "", name: "Untitled", @@ -500,6 +502,17 @@ const NeighborhoodExplorerComponent: React.FC = ({graphServi model={downloadOptions} tooltip="Download graph" tooltipOptions={{position: 'bottom', showDelay: 1000}} + onClick={async () => { + + const results = await entityService.getGraphReferences(myComponentRef.current!.getNodes(), messageService!); + + + const ws = XLSX.utils.json_to_sheet(results); + const wb = XLSX.utils.book_new(); + XLSX.utils.book_append_sheet(wb, ws, 'Sheet1'); + XLSX.writeFile(wb, 'co-ocurrences.xlsx'); + + }} />

diff --git a/ontology-manager-client/src/pages/visualization/co-ocurrences-summary/co-ocurrence-summary-page.component.tsx b/ontology-manager-client/src/pages/visualization/co-ocurrences-summary/co-ocurrence-summary-page.component.tsx index c3536c9..f32943d 100644 --- a/ontology-manager-client/src/pages/visualization/co-ocurrences-summary/co-ocurrence-summary-page.component.tsx +++ b/ontology-manager-client/src/pages/visualization/co-ocurrences-summary/co-ocurrence-summary-page.component.tsx @@ -390,6 +390,17 @@ const CoOcurrenceSummaryPageComponent: React.FC = () => { model={downloadOptions} tooltip="Download query results" tooltipOptions={{position: 'bottom', showDelay: 1000}} + onClick={async () => { + + + const results = await ontologyService.getCoOccurrencesDetails({leftTypeQuery: leftTypeQuery, rightTypeQuery: rightTypeQuery}, messageService!); + + const ws = XLSX.utils.json_to_sheet(results); + const wb = XLSX.utils.book_new(); + XLSX.utils.book_append_sheet(wb, ws, 'Sheet1'); + XLSX.writeFile(wb, 'co-ocurrences.xlsx'); + + }} />
From 431ac414bb40cb6b849a2dd5ae7599a02a740755 Mon Sep 17 00:00:00 2001 From: cav-ipb Date: Sun, 9 Jun 2024 18:13:23 +0200 Subject: [PATCH 11/11] Add disclaimer to documentation page --- .../pages/documentation/documentation-page.component.tsx | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/ontology-manager-client/src/pages/documentation/documentation-page.component.tsx b/ontology-manager-client/src/pages/documentation/documentation-page.component.tsx index eb575c6..394ea60 100644 --- a/ontology-manager-client/src/pages/documentation/documentation-page.component.tsx +++ b/ontology-manager-client/src/pages/documentation/documentation-page.component.tsx @@ -1,6 +1,7 @@ import { Accordion, AccordionTab } from 'primereact/accordion'; import { PageTitle } from '../../components'; +import { toolDisclaimer } from '../../utils'; const React = require('react'); @@ -84,6 +85,12 @@ For further information, please visit the GLACIER consortium’s official websit + + + At the moment, this tool is still primarily focused on the analysis of data of Cuban plants. Hence, the output for plants from other geographical regions might be weaker. +This tool shows connections of available data which could be erroneous, biased and not necessarily the most relevant one for your scientific question since it was extracted from available data sources with an automatic process. +We are actively working to expand the data basis (please contribute!) and improve the data quality of the platform. +