From 95fb0bdde35da07ab4b62ddac52339cda91f72e6 Mon Sep 17 00:00:00 2001 From: Christoph Zwerschke Date: Mon, 12 Aug 2024 14:38:15 +0200 Subject: [PATCH] Suppport new version of MASS (#239) --- package-lock.json | 4 +- package.json | 2 +- src/api/browse.ts | 22 +-- .../datasetAccordion/datasetAccordion.tsx | 15 +- .../boldenedSummaryDetails.tsx | 2 +- .../datasetSummary/datasetSummary.tsx | 56 ++++--- src/components/browse/dataset/datasetList.tsx | 32 +++- src/components/browse/sidebar/sidebar.tsx | 2 +- .../home/homeMidSection/homeMidSection.tsx | 2 +- src/mocks/data.js | 142 ++++++++++++------ src/mocks/responses.js | 45 +++--- src/models/dataset.ts | 14 +- 12 files changed, 210 insertions(+), 128 deletions(-) diff --git a/package-lock.json b/package-lock.json index b7fdd51f..65837591 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "data-portal-ui", - "version": "1.2.3", + "version": "1.3.0", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "data-portal-ui", - "version": "1.2.3", + "version": "1.3.0", "dependencies": { "@fortawesome/fontawesome-svg-core": "~6.4.2", "@fortawesome/free-brands-svg-icons": "~6.4.2", diff --git a/package.json b/package.json index 8d6390f7..9b1381f6 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "data-portal-ui", - "version": "1.2.3", + "version": "1.3.0", "private": true, "dependencies": { "@fortawesome/fontawesome-svg-core": "~6.4.2", diff --git a/src/api/browse.ts b/src/api/browse.ts index 6820a0f7..1033f672 100644 --- a/src/api/browse.ts +++ b/src/api/browse.ts @@ -29,7 +29,7 @@ type getDatasetsSearchRespType = ( * function with search results, returns nothing. * @param callbackFunc - Function takes an argument conforms to the searchResponseModel. * @param filterQuery - Filters to be applied, array of objects that conform to the facetFilterModel. - * @param searchKeyword - String representing the search keyword. Default: "*". + * @param searchKeyword - String representing the search keyword. Default: "". * @param skip - Number of results to skip in the search results. Default: 0. * @param limit - Maximum number of results to be returned by the search. Default: 20. * @param documentType - String representing the document type to search. Default: "Dataset". @@ -43,16 +43,18 @@ export const querySearchService: getDatasetsSearchRespType = async ( limit = 20, documentType = "EmbeddedDataset" ) => { - let url = new URL("rpc/search", MASS_URL); - const payload = { - class_name: documentType, - query: searchKeyword, - filters: filterQuery, - skip: skip, - limit: limit, - }; + let url = new URL("search", MASS_URL); + const params = url.searchParams; + params.append("class_name", documentType); + if (searchKeyword) params.append("query", searchKeyword); + filterQuery.forEach((filter) => { + params.append("filter_by", filter.key); + params.append("value", filter.value); + }); + if (skip) params.append("skip", skip.toString()); + params.append("limit", limit.toString()); try { - const response = await fetchJson(url, "POST", payload); + const response = await fetchJson(url, "GET"); const data = await response.json(); if (response.status !== 200) { throw new Error(`Status code ${response.status} in search response`); diff --git a/src/components/browse/dataset/datasetAccordion/datasetAccordion.tsx b/src/components/browse/dataset/datasetAccordion/datasetAccordion.tsx index 3ba7f480..76e87184 100644 --- a/src/components/browse/dataset/datasetAccordion/datasetAccordion.tsx +++ b/src/components/browse/dataset/datasetAccordion/datasetAccordion.tsx @@ -39,20 +39,20 @@ const DatasetAccordion = (props: DataSetListProps) => { {props.dsList.map((hit, index) => ( getDetails(hit.content.accession)} + onClick={() => getDetails(hit.id_)} > - {hit.content.accession} - {hit.content.ega_accession ? ( + {hit.id_} + {hit.content.alias ? ( <>
- {hit.content.ega_accession} + {hit.content.alias} ) : ( "" @@ -74,10 +74,7 @@ const DatasetAccordion = (props: DataSetListProps) => {
- +
))} diff --git a/src/components/browse/dataset/datasetAccordion/datasetSummary/boldenedSummaryDetails/boldenedSummaryDetails.tsx b/src/components/browse/dataset/datasetAccordion/datasetSummary/boldenedSummaryDetails/boldenedSummaryDetails.tsx index 46011657..36a3cae7 100644 --- a/src/components/browse/dataset/datasetAccordion/datasetSummary/boldenedSummaryDetails/boldenedSummaryDetails.tsx +++ b/src/components/browse/dataset/datasetAccordion/datasetSummary/boldenedSummaryDetails/boldenedSummaryDetails.tsx @@ -6,7 +6,7 @@ interface BoldenedProps { const BoldenedSummaryDetails = (props: BoldenedProps) => { return (
- {props.x.value} {props.x.count} + {props.x.value.replace(/_/g, " ")} {props.x.count}
); }; diff --git a/src/components/browse/dataset/datasetAccordion/datasetSummary/datasetSummary.tsx b/src/components/browse/dataset/datasetAccordion/datasetSummary/datasetSummary.tsx index b6c69e43..4ced34f4 100644 --- a/src/components/browse/dataset/datasetAccordion/datasetSummary/datasetSummary.tsx +++ b/src/components/browse/dataset/datasetAccordion/datasetSummary/datasetSummary.tsx @@ -43,12 +43,12 @@ const DatasetSummary = (props: DataSetDetailsProps) => {
{props.summary ? ( <> - {props.hit.content.ega_accession ? ( + {props.hit.content.alias ? (