Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Nickakhmetov/HMP-144 React 18 Upgrade #3155

Merged
merged 21 commits into from
Jul 12, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
21 commits
Select commit Hold shift + click to select a range
e0d50cb
bump deps
NickAkhmetov Jul 6, 2023
dbd0f5f
bump storybook version
NickAkhmetov Jul 6, 2023
90a1f51
add other "fix all" command to optionals
NickAkhmetov Jul 6, 2023
e05c1a1
bump react test renderer version to make jest tests pass
NickAkhmetov Jul 6, 2023
040c005
add `start` alias for `dev-start`
NickAkhmetov Jul 6, 2023
8906755
Bump styled-components to latest v5 minor version to fix `invalid use…
NickAkhmetov Jul 6, 2023
2bc8f9c
Prevent `undefined` count from being displayed if EntityCount is hove…
NickAkhmetov Jul 6, 2023
31a52e7
Update visx dependencies to React 18-compatible version
NickAkhmetov Jul 6, 2023
3570f5e
Update react-intersection-observer
NickAkhmetov Jul 6, 2023
163241b
Bump Provenance viz version
NickAkhmetov Jul 6, 2023
51cd25b
Merge branch 'main' into nickakhmetov/hmp-144-react-18-upgrade
NickAkhmetov Jul 6, 2023
0dd4807
Add a try/catch to prevent runtime errors from popping up
NickAkhmetov Jul 6, 2023
020ae20
changelog
NickAkhmetov Jul 6, 2023
9766fb5
changelog for entity count fix
NickAkhmetov Jul 6, 2023
1cad033
HMP-229 Upgrade React-PDF (#3157)
NickAkhmetov Jul 7, 2023
40d80a0
Upgrade nuka-carousel
NickAkhmetov Jul 7, 2023
fd61d51
merge react-pdf changelog with react 18 changelog, fix changelog form…
NickAkhmetov Jul 7, 2023
c4e7da4
remove weird submodule thing?
NickAkhmetov Jul 7, 2023
2895031
remove hardlink
NickAkhmetov Jul 11, 2023
6443d1c
re-add symlink
NickAkhmetov Jul 11, 2023
d3ad26e
Merge branch 'main' into nickakhmetov/hmp-144-react-18-upgrade, regen…
NickAkhmetov Jul 11, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .vscode/default.settings.json
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,9 @@
},
"python.formatting.provider": "autopep8",
"optional": {
"editor.formatOnSave": true
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.fixAll": true
}
}
}
4 changes: 4 additions & 0 deletions CHANGELOG-react-18.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
- Upgraded to React 18.
- Upgraded various dependencies to work with React 18.
- Fixed undefined count tooltips popping up for entity counts on homepage.
- Upgraded React-PDF to speed up display of PDF attachments.
4 changes: 4 additions & 0 deletions context/app/static/js/components/App.jsx
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
import React from 'react';
import { pdfjs } from 'react-pdf';
import marked from 'marked';
import Providers from './Providers';
import Routes from './Routes';
Expand Down Expand Up @@ -26,6 +27,9 @@ const workspacesUsers = [
'[email protected]',
];

// Set up worker for react-pdf
pdfjs.GlobalWorkerOptions.workerSrc = `//unpkg.com/pdfjs-dist@${pdfjs.version}/build/pdf.worker.min.js`;

function App(props) {
const { flaskData, groupsToken, isAuthenticated, userEmail, workspacesToken, userGroups = [] } = props;
const { endpoints, globalAlertMd } = flaskData;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import React from 'react';
import { render, screen } from 'test-utils/functions';
import { composeStories } from '@storybook/testing-react';
import { composeStories } from '@storybook/react';

import { buildNLMCitation } from './Citation';
import * as stories from './Citation.stories';
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
import React, { useState } from 'react';
import { Document, Page } from 'react-pdf/dist/esm/entry.webpack';
import { Document, Page } from 'react-pdf';
import Modal from '@material-ui/core/Modal';
import Button from '@material-ui/core/Button';
import Typography from '@material-ui/core/Typography';
Expand Down Expand Up @@ -56,7 +56,9 @@ function PDFViewer({ pdfUrl }) {
)}
<Modal open={open} onClose={handleClose} aria-labelledby="pdf-viewer-modal" aria-describedby="pdf-viewer-modal">
<ModalContentWrapper>
<Page pageNumber={currentPageNum} pdf={pdf} renderTextLayer={false} />
<Document file={pdfUrl}>
<Page pageNumber={currentPageNum} renderTextLayer={false} />
</Document>
{pdf && (
<PDFViewerControlButtons
numPages={pdf.numPages}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ import { formatCount } from './utils';

function EntityCount({ icon, count, label, href }) {
return (
<SecondaryBackgroundTooltip title={`${count} ${label}`} placement="bottom-center">
<SecondaryBackgroundTooltip title={count ? `${count} ${label}` : ''} placement="bottom">
<FlexLink href={href}>
<StyledDiv>{icon}</StyledDiv>
<div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,28 +10,29 @@ import { getCarouselImageSrcSet } from './utils';

const getCDNCarouselImageSrcSet = (key) => getCarouselImageSrcSet(key, CDN_URL);

const slides = [
{
title: 'Explore spatial single-cell data with Vitessce visualizations',
body: 'View multi-modal single-cell resolution measurements with reusable interactive components such as a scatterplot, spatial+imaging plot, genome browser tracks, statistical plots, and controller components.',
image: <CarouselImage {...getCDNCarouselImageSrcSet('vitessce-2')} alt="Vitessce" key="Vitessce" />,
buttonHref:
'/browse/dataset/69d9c52bc9edb625b496cecb623ec081#vitessce_conf_length=5937&vitessce_conf_version=0.0.1&vitessce_conf=N4Igxg9hBOAmCWA7AhgF3hRBlADssApiAFyixrIDOBqJoAgiSIwL4A0IBAtgEYGwJEAcwAqATxxFSzJqgC0WAHIBREOxAQelcZLozi4AgBsjajgDMCaAK7QCOqQyZCCiIuss27ANWRHr9hKO+pwAHjh2lJQYiGacvPyCQgBaUFx6jMQATABsAHRZAJw5WQAMABwAzADsACyFdaWF6tx8AkhCAEoQqGgxGSSlLQntwiLI0C6oABoDxHKVeU0AjA2V9YWbW+UArARy1cNtSeOTNACac3I7eTm1teW1NRtbm-uHHK2JHadTyXNDT4jJIAeS0WBoAAUIEYxEJMJRvPBojwjMFMuY-NQjt9hGDKBDUAAZZB8IyI5HwVHokiY8kEHGjIT4wkkslYeAALxpxGWtUZoK0nWQCGslDmywFHXxwtFlAAshBYDyQMhrKgIHEvkz8SC8GB4KgxBKpXitHr8IaxIrlXNVerNepKHh0H5UhB0tJMnJanlNllljtSllqqVKoUdk8djsnS74H5ur10JgAbG+n5fjRZl6SLVquVlnlKqUdgWsjtKuVipKOM700ZM6hLjniA9S3knoU+dUA7l7jHa3GMxM-nNENYTGnXUZE31MNmnMRx5PB-XZ8nEM3F8ujFP4zOenPEP8Wzu9wnDxuQdAeIbU6vp9fb6h6KFkWOJ7uH-vX8iAGLwKE-BzHS2IcAAFlYqBcMgODulwC76ICICQWgMFwWkW5IeoqHQbBjaIZkyG4ehjZYUR6iaJQAFGKgBDQB+K4aFoAAS8BCOBRjseBtCnp+lHgjQEJomAG5zAA2uJIAAMLGEYAAEADScjylYiCUPJ4moEoygAPr0CYul-lBtgEJQAC6IAcMsIDmWwUmySYSkqWpGlaTp+mGcZXhmZZHBZLZ9kyXJzmqcg6madpKieUYRkmZEfkgJUtnmQJBI0GxHFcRxvHbvxHBUYS0kwjAEmgC64EkA5IXKWFEXudFBmxd5qCmRZgXgCVDHEOJOTlGwyyrANoapWw5VoJVPXBU5tWuZFHlNXFPntdZHWQEYpU9X1A1DcsI3sONqCTdVM0ueFblRXpi0tW1iUBXZnUbd14nLJUORsGUtQfZWo2Hcd00KbN53zY1Xnxb5VlJWtXVVdte2lANFa-SAFVVQDoVzeJdVyE1CjWDwnQEEIMQWfJyjhJE0Qpg962bb1-WDYUw2lMjqNTY5gNnfV2O41g+OE8TCLmWTFNmVTsSrTTMNbQzu37WNKMTWjHMY8DWNqTjJh4wTRMk8L5MRGL-T+dDT1Va972fd95Ss0r7M1Vzbk81rfM64L6n66LUTG1DUtmzLzOI5UttHcrDt1U7ame4b3vUxwtPPXDcsswdiuh-bp0R5pdXR5TPs2X7dNJ0z8Mh-9KtA9zUcizH4uQ-d8fSy9b0faUX1ZD9qdsydnNZ+r4W50bKYcMlheJwzoZB2XYeZ5jWDgbB+zeAQokwO1Y+w7LJfy39M+93PC+SHIy+r9AK0gAXjf+-TO3bynCvd+jldufPi-HyvGpn3dpt0xbrft53B+dse6q3qq-I+J9P7n1HlfIuE8EaBmDl3YBT9HaaREAQUIrU7CWQ3gHRmzNp4Z33mrDBWDTKJUvo9OBt9CHIPTiA5+6DDxGEHrHWIeCb4ENLvQ8u4dMYiBYWwuuktYHj1oTwoBDDUF90Eb0VhNc87DxAA3ahz0-5Ww7jbXhe9QFuTkX4YRPsYFqM3oHRBRDGFoPEsVAAbhMeMiBCBGLjqY-BydLEyMxnYhx4VnGKKHhLC+P9xHcJ3mnPhs81Y+OgI4-xBslFBNUQnc2LdNGAN3sQvRmkYlxIIC4oJJiUn4MnhYlgo0QCeGwQQGidFup5SYlU0ymVOLcVyvoM8FhwbCQ-v0FsDkAAiZRbIeHBr4fwBBipPXQnaHARgqAwTiE0nwfgAhTJgOhYUwgeTiQRqUAo5YKlUXWdAZQTilQdDtC4NwPTRL9HPEYAAkjBFwJIxD0TKiAI0ugDDQCoHUyGSBlShEGBwWxlJqQkFQNAAIYiZlLk-AVfUVoSDLA4LAD0yAkAOCYPKJAAB6eUyAQUcGhedPAdhECoBOSQHcHBKXKlicIG0UhmDtHQLYogHAxQEEqLAWkWICDxwXogNw5IqqgGoCJMS0hOSgq+fKsAJAyjqGKeJcsOwPrRi1TsB64KURoihTCoVIBKBcUZVVdYmrQzLG0QrKVvSUyyvlbxBG4ASA5FVU3BGGq2AszBRCw1xBoWwtNeaj5PVXpZHKNUNgORoyVF1anB1dynWgDlcQN1rr44kAHG49V2qfXRj1YGqQIaTVmvgBayNVQ2DVEKLUe+krjCOtiM6zNpLFXKs9WIqqeydUloNWW41tZw3qLzIjcoORUrI2+ay58MFKAAGtAWIGBaigNQ6jWhoTvCulGhkVGg3SADFMFsVBFxQSolJKvl-PUhS1w1LvV+r9Q9Bl9EOgsqYPQdl8BOWQx5XygV9JhXhTFeKHqzbpV9NAEqjtCr4MZuQmq-tGrB1UiDaBCtY6qpZCyANJ45QKjIxTTK2Dx7s0gCQ166+RbNX+pAPqjDw7Q2VurS9Uosa+Q1ByNO5NLbU1tvI9kTtiHBg0bpr6uj6HIXECw6OqtEaXq5AI+GPDJGBNkfdcQSoom3XUd7T1X1UmZOYcFQp9je1VN1EKDO8pDyIRCC4I+o8byI0NK-KaocRhoRIGJMgd59SOn5S8-WRQBBuI8BgOBKAsA3NBcyJ01Uv7MB+BZDQCDHn1BcBhCvCcBAWnZR4oxXc6hyC9GoKgCD4lQDmHgGiartX6uBB+aqUV5XkByEICYSgeROQTAYkijcmXKn4CgWjKi+KK7WMujFJa1Tz6Tem33Z2RhtYCz1gE9hkMlv8LVjnLbIjmKUCm3tsBh8l4fzXolXbUT6pkOqTdrQp27v6KEYdn2t2SH1VyX4-JH3XHoRwB0Eb8gdJ6AQFwarCCHpLoIMaAwVEuD4qq24NQ6hQgI+O8jzHcQUDOaYN18V3LoCmAMDxVAOBKDEHxfiqglXevgXxuhSA6kYDoGsFwPIMAhD4pyIUWAhQwA7CyDwMAhR+A8BKDsHg9QciEDAFLjuK8KjLDp+1igch+vQGgPiuwQhSilGWLpTBEQ5BgY631gbZgmtohxQYC3muidyAZ1bnXO2cDDYlSAIQ0AIDWBwIoZABODDLcxrN664Nz6VaDyH47L3vsXQWmDZallU6+-94H4PrKw-7Y1rzfmushYA6CTH7PTAvvZP7ogTWa3XYbeLwkwJNufd+4D7HnPZ3I4DxL5DMvcfK9MOrwUlvGf2-l9D13zS4DLun2jzQDvFfnu5-O2-SB13R9t6z3Hlf+jMGPb7wvif8fd-oP3xQzfmfF+T9e8w+RI-axH4H8vqf4kDEKKb9t9PW-r9eOiRAexWJP7B-U1J-VlQfaxX7Jxf7T-OucpDgfHVlZ3BnADUnJgCnKnGnOnKIDLPIJnHgFnBEdneATnbnSYPnAXIXEXMXCXWAJXGXOXBXJXSoFXAsdXNdTXbXXXfXQ3Y3U3aAc3DXXoN3BiVOOrO3C9B3IQzrfgwJOQGCaFQCEQj3L3aQBQ2JEFAwWYdQRApgWQ9heQtADQ1AsnFCVASnanWnenXA-AwgtnaADnLnHnCgwXYXUXcXSXaXWXYoJgkoFgsAVXdgjrLXAbPXImXgk3CmQQjg4QrglvcQlrVlP5SgOpPIAAK0oGUQgE9xJj0HgBeTMm92c16A6zyMoAACFDRF0V05NzMNBnMRB4BzBzAQRmiGcABVNA8ncwzAqwnAqrPA5nWCVnTIhwkgpw8g-nVw6gjwugrwxgleZg1gtXf3SndUXSCANojLfFYHSQLiNwDY9UHAdUfFfgsIg3I3SIiIbnLYgYjIzAAAfg1Dh0QAAF48dj8eDLj+DIY50K9nM5B0BmiTD0CejLDsDXdbDhiiCxjSDnCpiqD3DaD6DvD5dFi-Dlj8UPQaAmjzA5AcAxA-kuAq0TtdjjAkACBDi1jUBTiKZziIj+DudnM8ggSniIAXj3jU5iiRQKAyjKi8Jl1t0TVsTGjmjWjzAOiuizCLCsDrCBioScARjiC4TJjKC3CaDPDyxUTfDlcAi2DVjjjUANjbjST4A9iKSqTDT8Vqj6TLjqibiJTcD7jEA2SOSPi48vjjdqjfjJD6j9ggTzAQTuiZS+jIShjFSYTHCyDecET1TZiUSFjFcMS9SVjijcT8TCTg8SSdizTySDiDSTibTPTdJ7TsSWSmjXTXBOS31XBGV4tqsQBiyfj6Vwi7SqAV0HpKAwBIIYJl4z4+kQB9l9kApuVqBIRwIxBogwA-AORuQsBpz9ihBgMwIQBdDfl-kPl4DVzj8sBIROh5QAMq1v01AHplQuzYkcinUQBV1DQsAyU6IhAsc1QNRIZ5kxBVjvdIAuAcBMBH0mAzywALyxJG4YBBAjx5zsjCjpAOtKtjzvw-BnlkBXkAsI0ZAcJcwOAAB3EgXTEATQt1BHfqEAawI8gwVgBWL8n8twKlJgN8+iYqKlP3EwD5ECuAJAcCyASQEbGCmgOC47e3GQLpHyASxgIS6pcZAIESvvbzeCPiusacAiOS7zMiJS+sRsE8QS0LacdcGIbMTS+S-cHSzAZsfS7zIy48VS7Sy8GIJ8O8Mi6S+sWyl8N8CDUy+sRC5CwLSy-cRzZzKlVzFC7qNy6cXzKleLbyvwcLSLaLWLcK+y9C4gIi7CnTDgfCjgBHN1Ei-lAwcolvSi38migwAyvwSGSAUC9ijcCCriiHCgWC+ygqLQKSsS0yJqypMZVZRIiKowWS+qrSwy6yq80Svq4cM4GYLqlS3q4qhsEcGgDSoaqa8yvS+asygazcLq8yuahyqypMGym8Oy4K-cJy38Vy5a+sY6gCICbKzSqiWpVCoaqiQrNpPiwqISTTAc+6wSVAR6nKZ6z6mlXq5ZArbiIrXiTSwG25GVMG9qiZE5eFKGnyCSyZLqTZcKFwX6ygE5M5SAJILqjyggOKg6mcomPynazAAm06kKiAPzcmra-cKKjiKLaAGLJUGmjgEUBADcNLT6k6yGHLESfLb64reKiCEgJKjCvCnC9K+VLKpgaSPKj0Kiv8oq6c8w+iOZHoUqqANilASqziqCsgWq3i3q7UE4X0j67QM2yGQG1qwGxG1qk2joHqzSh24Qcyvil20QGasa424EH4L2kyoaj29S9232s0dKVAaEWEeEdSJELdH244aUT6tkYwCkOO520O5kJO0kYwWc1lQOjOmUEUEgnmoEBOsO2UYur9eO3ETOygC0A0I9aunUc0Q9a0JUPOnbLQW6oK82wW0G82wkCG96zu8Ovu9GoqaWeG6pMegG7pN6waq26GtZZG2CPi22jq2G2CLZNG3q45LqLGi5YQPi9mw0GILm8OnmhKsWlKiW4gWNEADK7lUikAAZeW78gq0GonQkcUVisC3WyC7iw2-uke1ql67Seetta6z6meqB8O-6qe0yIehehqjG-e85HG3qk+zmowdLKrY8hK++5K-DW+5YAi3NJ+q61QVOfK6i0G65Qo3+iqmIKq-Wk9IBte8GUBz6pByBoawG7ujhnyGBvhue6DZB47TG9By5YWlCchlGP3KnPQQA+MakSgZOnBzlHXRTJgcKdAa5OIIh1K1FMh+DGWgwP8N+xWwqlCKCGZRhnW5hvWwBirI22Bm2zhy25qlZCZVqkiWCeCJayGPxjCD0AOoJ2x-CL2wJiCCJnACa2BgR3e1iYGp6pJ8Onh8ejKFJn6tJie-2BBuwRJgpoGrKVJ4pjJ2ehGjelenAQR8S6p6ZLe1GjulByR7G6RzSrBs+nB7m-BkW1sDgCIbI0HO9Z0CAagIUsFXxVR9RkETR2JW0KQvR1wAxkge+zQ3CwiihpgAAcRPIQM+NbL4Ipkhk0brgMELH2T5DUCAA',
},
{
title: 'Navigate healthy human cells with the Common Coordinate Framework',
body: 'Interact with the human body data with the Anatomical Structures, Cell Types and Biomarkers (ASCT+B) Tables and CCF Ontology. Also explore two user interfaces: the Registration User Interface (RUI) for tissue data registration and Exploration User Interface (EUI) for semantic and spatial data.',
image: <CarouselImage {...getCDNCarouselImageSrcSet('ccf')} alt="CCF Portal" key="CCF Portal" />,
buttonHref: 'https://hubmapconsortium.github.io/ccf/',
},
{
title: 'Analyze single-cell RNA-seq experiments with Azimuth',
body: 'Explore Azimuth, a web application that uses an annotated reference dataset to automate the processing, analysis and interpretation of new single-cell RNA-seq experiments.',
image: <CarouselImage {...getCDNCarouselImageSrcSet('azimuth')} alt="Azimuth" key="Azimuth" />,
buttonHref: 'https://azimuth.hubmapconsortium.org/',
},
];

function ImageCarouselContainer() {
const slides = [
{
title: 'Explore spatial single-cell data with Vitessce visualizations',
body: 'View multi-modal single-cell resolution measurements with reusable interactive components such as a scatterplot, spatial+imaging plot, genome browser tracks, statistical plots, and controller components.',
image: <CarouselImage {...getCDNCarouselImageSrcSet('vitessce-2')} alt="Vitessce" key="Vitessce" />,
buttonHref:
'/browse/dataset/69d9c52bc9edb625b496cecb623ec081#vitessce_conf_length=5937&vitessce_conf_version=0.0.1&vitessce_conf=N4Igxg9hBOAmCWA7AhgF3hRBlADssApiAFyixrIDOBqJoAgiSIwL4A0IBAtgEYGwJEAcwAqATxxFSzJqgC0WAHIBREOxAQelcZLozi4AgBsjajgDMCaAK7QCOqQyZCCiIuss27ANWRHr9hKO+pwAHjh2lJQYiGacvPyCQgBaUFx6jMQATABsAHRZAJw5WQAMABwAzADsACyFdaWF6tx8AkhCAEoQqGgxGSSlLQntwiLI0C6oABoDxHKVeU0AjA2V9YWbW+UArARy1cNtSeOTNACac3I7eTm1teW1NRtbm-uHHK2JHadTyXNDT4jJIAeS0WBoAAUIEYxEJMJRvPBojwjMFMuY-NQjt9hGDKBDUAAZZB8IyI5HwVHokiY8kEHGjIT4wkkslYeAALxpxGWtUZoK0nWQCGslDmywFHXxwtFlAAshBYDyQMhrKgIHEvkz8SC8GB4KgxBKpXitHr8IaxIrlXNVerNepKHh0H5UhB0tJMnJanlNllljtSllqqVKoUdk8djsnS74H5ur10JgAbG+n5fjRZl6SLVquVlnlKqUdgWsjtKuVipKOM700ZM6hLjniA9S3knoU+dUA7l7jHa3GMxM-nNENYTGnXUZE31MNmnMRx5PB-XZ8nEM3F8ujFP4zOenPEP8Wzu9wnDxuQdAeIbU6vp9fb6h6KFkWOJ7uH-vX8iAGLwKE-BzHS2IcAAFlYqBcMgODulwC76ICICQWgMFwWkW5IeoqHQbBjaIZkyG4ehjZYUR6iaJQAFGKgBDQB+K4aFoAAS8BCOBRjseBtCnp+lHgjQEJomAG5zAA2uJIAAMLGEYAAEADScjylYiCUPJ4moEoygAPr0CYul-lBtgEJQAC6IAcMsIDmWwUmySYSkqWpGlaTp+mGcZXhmZZHBZLZ9kyXJzmqcg6madpKieUYRkmZEfkgJUtnmQJBI0GxHFcRxvHbvxHBUYS0kwjAEmgC64EkA5IXKWFEXudFBmxd5qCmRZgXgCVDHEOJOTlGwyyrANoapWw5VoJVPXBU5tWuZFHlNXFPntdZHWQEYpU9X1A1DcsI3sONqCTdVM0ueFblRXpi0tW1iUBXZnUbd14nLJUORsGUtQfZWo2Hcd00KbN53zY1Xnxb5VlJWtXVVdte2lANFa-SAFVVQDoVzeJdVyE1CjWDwnQEEIMQWfJyjhJE0Qpg962bb1-WDYUw2lMjqNTY5gNnfV2O41g+OE8TCLmWTFNmVTsSrTTMNbQzu37WNKMTWjHMY8DWNqTjJh4wTRMk8L5MRGL-T+dDT1Va972fd95Ss0r7M1Vzbk81rfM64L6n66LUTG1DUtmzLzOI5UttHcrDt1U7ame4b3vUxwtPPXDcsswdiuh-bp0R5pdXR5TPs2X7dNJ0z8Mh-9KtA9zUcizH4uQ-d8fSy9b0faUX1ZD9qdsydnNZ+r4W50bKYcMlheJwzoZB2XYeZ5jWDgbB+zeAQokwO1Y+w7LJfy39M+93PC+SHIy+r9AK0gAXjf+-TO3bynCvd+jldufPi-HyvGpn3dpt0xbrft53B+dse6q3qq-I+J9P7n1HlfIuE8EaBmDl3YBT9HaaREAQUIrU7CWQ3gHRmzNp4Z33mrDBWDTKJUvo9OBt9CHIPTiA5+6DDxGEHrHWIeCb4ENLvQ8u4dMYiBYWwuuktYHj1oTwoBDDUF90Eb0VhNc87DxAA3ahz0-5Ww7jbXhe9QFuTkX4YRPsYFqM3oHRBRDGFoPEsVAAbhMeMiBCBGLjqY-BydLEyMxnYhx4VnGKKHhLC+P9xHcJ3mnPhs81Y+OgI4-xBslFBNUQnc2LdNGAN3sQvRmkYlxIIC4oJJiUn4MnhYlgo0QCeGwQQGidFup5SYlU0ymVOLcVyvoM8FhwbCQ-v0FsDkAAiZRbIeHBr4fwBBipPXQnaHARgqAwTiE0nwfgAhTJgOhYUwgeTiQRqUAo5YKlUXWdAZQTilQdDtC4NwPTRL9HPEYAAkjBFwJIxD0TKiAI0ugDDQCoHUyGSBlShEGBwWxlJqQkFQNAAIYiZlLk-AVfUVoSDLA4LAD0yAkAOCYPKJAAB6eUyAQUcGhedPAdhECoBOSQHcHBKXKlicIG0UhmDtHQLYogHAxQEEqLAWkWICDxwXogNw5IqqgGoCJMS0hOSgq+fKsAJAyjqGKeJcsOwPrRi1TsB64KURoihTCoVIBKBcUZVVdYmrQzLG0QrKVvSUyyvlbxBG4ASA5FVU3BGGq2AszBRCw1xBoWwtNeaj5PVXpZHKNUNgORoyVF1anB1dynWgDlcQN1rr44kAHG49V2qfXRj1YGqQIaTVmvgBayNVQ2DVEKLUe+krjCOtiM6zNpLFXKs9WIqqeydUloNWW41tZw3qLzIjcoORUrI2+ay58MFKAAGtAWIGBaigNQ6jWhoTvCulGhkVGg3SADFMFsVBFxQSolJKvl-PUhS1w1LvV+r9Q9Bl9EOgsqYPQdl8BOWQx5XygV9JhXhTFeKHqzbpV9NAEqjtCr4MZuQmq-tGrB1UiDaBCtY6qpZCyANJ45QKjIxTTK2Dx7s0gCQ166+RbNX+pAPqjDw7Q2VurS9Uosa+Q1ByNO5NLbU1tvI9kTtiHBg0bpr6uj6HIXECw6OqtEaXq5AI+GPDJGBNkfdcQSoom3XUd7T1X1UmZOYcFQp9je1VN1EKDO8pDyIRCC4I+o8byI0NK-KaocRhoRIGJMgd59SOn5S8-WRQBBuI8BgOBKAsA3NBcyJ01Uv7MB+BZDQCDHn1BcBhCvCcBAWnZR4oxXc6hyC9GoKgCD4lQDmHgGiartX6uBB+aqUV5XkByEICYSgeROQTAYkijcmXKn4CgWjKi+KK7WMujFJa1Tz6Tem33Z2RhtYCz1gE9hkMlv8LVjnLbIjmKUCm3tsBh8l4fzXolXbUT6pkOqTdrQp27v6KEYdn2t2SH1VyX4-JH3XHoRwB0Eb8gdJ6AQFwarCCHpLoIMaAwVEuD4qq24NQ6hQgI+O8jzHcQUDOaYN18V3LoCmAMDxVAOBKDEHxfiqglXevgXxuhSA6kYDoGsFwPIMAhD4pyIUWAhQwA7CyDwMAhR+A8BKDsHg9QciEDAFLjuK8KjLDp+1igch+vQGgPiuwQhSilGWLpTBEQ5BgY631gbZgmtohxQYC3muidyAZ1bnXO2cDDYlSAIQ0AIDWBwIoZABODDLcxrN664Nz6VaDyH47L3vsXQWmDZallU6+-94H4PrKw-7Y1rzfmushYA6CTH7PTAvvZP7ogTWa3XYbeLwkwJNufd+4D7HnPZ3I4DxL5DMvcfK9MOrwUlvGf2-l9D13zS4DLun2jzQDvFfnu5-O2-SB13R9t6z3Hlf+jMGPb7wvif8fd-oP3xQzfmfF+T9e8w+RI-axH4H8vqf4kDEKKb9t9PW-r9eOiRAexWJP7B-U1J-VlQfaxX7Jxf7T-OucpDgfHVlZ3BnADUnJgCnKnGnOnKIDLPIJnHgFnBEdneATnbnSYPnAXIXEXMXCXWAJXGXOXBXJXSoFXAsdXNdTXbXXXfXQ3Y3U3aAc3DXXoN3BiVOOrO3C9B3IQzrfgwJOQGCaFQCEQj3L3aQBQ2JEFAwWYdQRApgWQ9heQtADQ1AsnFCVASnanWnenXA-AwgtnaADnLnHnCgwXYXUXcXSXaXWXYoJgkoFgsAVXdgjrLXAbPXImXgk3CmQQjg4QrglvcQlrVlP5SgOpPIAAK0oGUQgE9xJj0HgBeTMm92c16A6zyMoAACFDRF0V05NzMNBnMRB4BzBzAQRmiGcABVNA8ncwzAqwnAqrPA5nWCVnTIhwkgpw8g-nVw6gjwugrwxgleZg1gtXf3SndUXSCANojLfFYHSQLiNwDY9UHAdUfFfgsIg3I3SIiIbnLYgYjIzAAAfg1Dh0QAAF48dj8eDLj+DIY50K9nM5B0BmiTD0CejLDsDXdbDhiiCxjSDnCpiqD3DaD6DvD5dFi-Dlj8UPQaAmjzA5AcAxA-kuAq0TtdjjAkACBDi1jUBTiKZziIj+DudnM8ggSniIAXj3jU5iiRQKAyjKi8Jl1t0TVsTGjmjWjzAOiuizCLCsDrCBioScARjiC4TJjKC3CaDPDyxUTfDlcAi2DVjjjUANjbjST4A9iKSqTDT8Vqj6TLjqibiJTcD7jEA2SOSPi48vjjdqjfjJD6j9ggTzAQTuiZS+jIShjFSYTHCyDecET1TZiUSFjFcMS9SVjijcT8TCTg8SSdizTySDiDSTibTPTdJ7TsSWSmjXTXBOS31XBGV4tqsQBiyfj6Vwi7SqAV0HpKAwBIIYJl4z4+kQB9l9kApuVqBIRwIxBogwA-AORuQsBpz9ihBgMwIQBdDfl-kPl4DVzj8sBIROh5QAMq1v01AHplQuzYkcinUQBV1DQsAyU6IhAsc1QNRIZ5kxBVjvdIAuAcBMBH0mAzywALyxJG4YBBAjx5zsjCjpAOtKtjzvw-BnlkBXkAsI0ZAcJcwOAAB3EgXTEATQt1BHfqEAawI8gwVgBWL8n8twKlJgN8+iYqKlP3EwD5ECuAJAcCyASQEbGCmgOC47e3GQLpHyASxgIS6pcZAIESvvbzeCPiusacAiOS7zMiJS+sRsE8QS0LacdcGIbMTS+S-cHSzAZsfS7zIy48VS7Sy8GIJ8O8Mi6S+sWyl8N8CDUy+sRC5CwLSy-cRzZzKlVzFC7qNy6cXzKleLbyvwcLSLaLWLcK+y9C4gIi7CnTDgfCjgBHN1Ei-lAwcolvSi38migwAyvwSGSAUC9ijcCCriiHCgWC+ygqLQKSsS0yJqypMZVZRIiKowWS+qrSwy6yq80Svq4cM4GYLqlS3q4qhsEcGgDSoaqa8yvS+asygazcLq8yuahyqypMGym8Oy4K-cJy38Vy5a+sY6gCICbKzSqiWpVCoaqiQrNpPiwqISTTAc+6wSVAR6nKZ6z6mlXq5ZArbiIrXiTSwG25GVMG9qiZE5eFKGnyCSyZLqTZcKFwX6ygE5M5SAJILqjyggOKg6mcomPynazAAm06kKiAPzcmra-cKKjiKLaAGLJUGmjgEUBADcNLT6k6yGHLESfLb64reKiCEgJKjCvCnC9K+VLKpgaSPKj0Kiv8oq6c8w+iOZHoUqqANilASqziqCsgWq3i3q7UE4X0j67QM2yGQG1qwGxG1qk2joHqzSh24Qcyvil20QGasa424EH4L2kyoaj29S9232s0dKVAaEWEeEdSJELdH244aUT6tkYwCkOO520O5kJO0kYwWc1lQOjOmUEUEgnmoEBOsO2UYur9eO3ETOygC0A0I9aunUc0Q9a0JUPOnbLQW6oK82wW0G82wkCG96zu8Ovu9GoqaWeG6pMegG7pN6waq26GtZZG2CPi22jq2G2CLZNG3q45LqLGi5YQPi9mw0GILm8OnmhKsWlKiW4gWNEADK7lUikAAZeW78gq0GonQkcUVisC3WyC7iw2-uke1ql67Seetta6z6meqB8O-6qe0yIehehqjG-e85HG3qk+zmowdLKrY8hK++5K-DW+5YAi3NJ+q61QVOfK6i0G65Qo3+iqmIKq-Wk9IBte8GUBz6pByBoawG7ujhnyGBvhue6DZB47TG9By5YWlCchlGP3KnPQQA+MakSgZOnBzlHXRTJgcKdAa5OIIh1K1FMh+DGWgwP8N+xWwqlCKCGZRhnW5hvWwBirI22Bm2zhy25qlZCZVqkiWCeCJayGPxjCD0AOoJ2x-CL2wJiCCJnACa2BgR3e1iYGp6pJ8Onh8ejKFJn6tJie-2BBuwRJgpoGrKVJ4pjJ2ehGjelenAQR8S6p6ZLe1GjulByR7G6RzSrBs+nB7m-BkW1sDgCIbI0HO9Z0CAagIUsFXxVR9RkETR2JW0KQvR1wAxkge+zQ3CwiihpgAAcRPIQM+NbL4Ipkhk0brgMELH2T5DUCAA',
},
{
title: 'Navigate healthy human cells with the Common Coordinate Framework',
body: 'Interact with the human body data with the Anatomical Structures, Cell Types and Biomarkers (ASCT+B) Tables and CCF Ontology. Also explore two user interfaces: the Registration User Interface (RUI) for tissue data registration and Exploration User Interface (EUI) for semantic and spatial data.',
image: <CarouselImage {...getCDNCarouselImageSrcSet('ccf')} alt="CCF Portal" key="CCF Portal" />,
buttonHref: 'https://hubmapconsortium.github.io/ccf/',
},
{
title: 'Analyze single-cell RNA-seq experiments with Azimuth',
body: 'Explore Azimuth, a web application that uses an annotated reference dataset to automate the processing, analysis and interpretation of new single-cell RNA-seq experiments.',
image: <CarouselImage {...getCDNCarouselImageSrcSet('azimuth')} alt="Azimuth" key="Azimuth" />,
buttonHref: 'https://azimuth.hubmapconsortium.org/',
},
];
// Set random intial image index:
const [selectedImageIndex, setSelectedImageIndex] = useState(Math.floor(Math.random() * slides.length));
const { title, body, buttonHref } = slides[selectedImageIndex];
Expand Down
18 changes: 11 additions & 7 deletions context/app/static/js/components/searchPage/SearchWrapper.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -70,13 +70,17 @@ function SearchWrapper({
const {
query: { query, post_filter },
} = searchkit.query;
const allResults = await fetchSearchData(
{ query, post_filter, _source: false, size: 10000 },
elasticsearchEndpoint,
groupsToken,
);
// eslint-disable-next-line no-underscore-dangle
setAllResultsUUIDs(allResults.hits.hits.map((hit) => hit._id));
try {
const allResults = await fetchSearchData(
{ query, post_filter, _source: false, size: 10000 },
elasticsearchEndpoint,
groupsToken,
);
// eslint-disable-next-line no-underscore-dangle
setAllResultsUUIDs(allResults.hits.hits.map((hit) => hit._id));
} catch (error) {
console.error('Error fetching result UUIDs', error);
}
}
getAndSetAllUUIDs();
});
Expand Down
1 change: 0 additions & 1 deletion context/jest.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ module.exports = {
'metadata-field-descriptions$': '<rootDir>/ingest-validation-tools/docs/field-descriptions.yaml',
'metadata-field-types$': '<rootDir>/ingest-validation-tools/docs/field-types.yaml',
'metadata-field-entities$': '<rootDir>/ingest-validation-tools/docs/field-entities.yaml',
'react-pdf/dist/esm/entry.webpack': 'react-pdf/dist/umd/entry.jest',
},
transform: {
'^.+\\.(t|j)sx?$': [
Expand Down
Loading
Loading