diff --git a/frontend/public/eraser.png b/frontend/public/eraser.png
new file mode 100644
index 0000000..df2d564
Binary files /dev/null and b/frontend/public/eraser.png differ
diff --git a/frontend/public/magnifier.png b/frontend/public/magnifier.png
index 3e2f37b..300fd94 100644
Binary files a/frontend/public/magnifier.png and b/frontend/public/magnifier.png differ
diff --git a/frontend/src/App.css b/frontend/src/App.css
index db7c102..26ca9cf 100644
--- a/frontend/src/App.css
+++ b/frontend/src/App.css
@@ -60,6 +60,13 @@ html {
margin-top: 8px;
}
+.buttonsDiv {
+ height: 93px;
+ display: flex;
+ flex-direction: column;
+ justify-content: space-around;
+}
+
.containerExtraSections2 {
display: flex;
flex-direction: column;
@@ -84,7 +91,7 @@ html {
}
.version {
- margin-right: 20px;
+ margin-right: 28px;
margin-top: -18px;
color: #3176b1 !important;
font-weight: 600 !important;
@@ -100,12 +107,42 @@ html {
}
.searchButton {
- padding-right: 4px;
- padding-left: 0px;
cursor: pointer;
margin-left: 12px;
border: none;
+ border-radius: 100px;
+ background: #3176b1;
+ padding: 10px, 24px, 10px, 16px;
+ color: white;
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
+ Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
+ font-size: 14px;
+ display: flex;
+ font-weight: 500;
+ width: 99px;
+ height: 40px;
+ justify-content: space-evenly;
+ align-items: center;
+}
+
+.clearButton {
+ cursor: pointer;
+ margin-left: 12px;
+ border: none;
+ border-radius: 100px;
background: white;
+ padding: 10px, 24px, 10px, 16px;
+ color: #3176b1;
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto,
+ Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
+ font-size: 14px;
+ display: flex;
+ font-weight: 500;
+ width: 99px;
+ height: 40px;
+ justify-content: space-evenly;
+ align-items: center;
+ border: 1px solid #3176b1;
}
.scopeDiv {
@@ -396,12 +433,12 @@ p a {
}
.searchIcon {
- width: 31px;
- margin-top: -1px;
+ width: 13px;
+ margin-right: -2px;
}
-.searchIcon:hover {
- width: 33px;
- margin-top: -3px;
+.clearIcon {
+ width: 15px;
+ margin-right: -2px;
}
.forwardIcon {
@@ -697,7 +734,8 @@ p a {
.container2 {
width: 100vw;
display: flex;
- margin-bottom: 40px;
+ margin-bottom: 18px;
+ margin-top: 10px;
}
.NavlinkVerifier {
@@ -860,7 +898,6 @@ p a {
transition: 0.2s ease-in-out;
}
-
.elixirLogo:hover {
-webkit-filter: grayscale(0%);
filter: grayscale(0%);
@@ -1439,6 +1476,12 @@ h5 {
text-underline-offset: 1px;
}
+ .buttonsDiv {
+ display: flex;
+ flex-direction: column;
+ justify-content: space-around;
+ }
+
.crossQueriesTittle {
margin-bottom: 12px;
font-size: 12px;
@@ -1556,10 +1599,6 @@ h5 {
box-shadow: rgb(234 221 221 / 16%) 0px 1px 4px;
}
- .container2 {
- margin-bottom: 0px;
- }
-
.exampleQuery {
width: 100%;
border: none;
@@ -1715,21 +1754,6 @@ h5 {
'Helvetica Neue', sans-serif;
text-transform: uppercase;
}
- .searchIcon {
- width: 26px;
- margin-top: -1px;
- margin-left: -8px;
- }
- .searchIcon:hover {
- width: 27px;
- margin-top: -1px;
- margin-left: -8px;
- }
-
- .searchButton {
- height: 30px;
- cursor: pointer;
- }
.examplesQueriesList {
display: flex;
@@ -1889,10 +1913,6 @@ h5 {
box-shadow: rgb(234 221 221 / 16%) 0px 1px 4px;
}
- .container2 {
- margin-bottom: 0px;
- }
-
.exampleQuery {
width: 100%;
border: none;
@@ -2065,22 +2085,6 @@ h5 {
'Helvetica Neue', sans-serif;
text-transform: uppercase;
}
- .searchIcon {
- width: 26px;
- margin-top: -1px;
- margin-left: -8px;
- }
- .searchIcon:hover {
- width: 27px;
- margin-top: -1px;
- margin-left: -8px;
- }
-
-
- .searchButton {
- height: 30px;
- cursor: pointer;
- }
.examplesQueriesList {
display: flex;
@@ -2116,6 +2120,15 @@ h5 {
}
}
+@media (max-width: 700px) {
+ .buttonsDiv {
+ display: flex;
+ flex-direction: column;
+ justify-content: space-around;
+ margin-top: 5px;
+ height: 101px;
+ }
+}
@media (max-width: 460px) {
.containerForm {
margin-left: 0px;
diff --git a/frontend/src/components/Biosamples/BiosamplesResults.js b/frontend/src/components/Biosamples/BiosamplesResults.js
index 5347cb6..0da1b32 100644
--- a/frontend/src/components/Biosamples/BiosamplesResults.js
+++ b/frontend/src/components/Biosamples/BiosamplesResults.js
@@ -316,7 +316,8 @@ function BiosamplesResults (props) {
queryArray[index].push('!')
} else {
queryArray[index] = term.split('%')
- queryArray[index].push('%')
+ console.log(queryArray[index])
+ queryArray[index].push('=')
}
let alphanumericFilter = {}
@@ -466,7 +467,9 @@ function BiosamplesResults (props) {
}
if (updatedArrayFilterVar.length === 0) {
- beaconsList.push(res.data.response)
+ res.data.responses.forEach(element => {
+ beaconsList.push(element)
+ })
}
let variablePause = false
diff --git a/frontend/src/components/CrossQueries/CrossQueries.css b/frontend/src/components/CrossQueries/CrossQueries.css
index 3871540..0a14b77 100644
--- a/frontend/src/components/CrossQueries/CrossQueries.css
+++ b/frontend/src/components/CrossQueries/CrossQueries.css
@@ -135,18 +135,7 @@ h5:hover {
margin-left: 10px;
margin-right: 10px;
}
- .inputSearch {
- width: 70vw;
- height: -moz-fit-content;
- height: fit-content;
- padding: 10px;
- font-size: 14 px;
- border: 1px solid #3176b1;
- text-overflow: clip;
- max-width: 80vw;
- font-size: 13px;
- border-radius: 3px;
- }
+
.crossQueriesForm {
padding: 34px;
display: flex;
diff --git a/frontend/src/components/Dataset/BeaconInfo.css b/frontend/src/components/Dataset/BeaconInfo.css
index ca9c8df..decc888 100644
--- a/frontend/src/components/Dataset/BeaconInfo.css
+++ b/frontend/src/components/Dataset/BeaconInfo.css
@@ -69,7 +69,6 @@ p a:hover {
.tittle2 h1 {
font-size: 14px;
font-weight: normal;
- margin: 14px;
color: #5d5454;
}
@@ -97,7 +96,7 @@ p a:hover {
margin-bottom: -3px;
}
.tittle {
- width: 40vw;
+ width: 36vw;
background: #c8d4e6;
border-radius: 2px;
/* height: 80px; */
@@ -120,7 +119,6 @@ p a:hover {
flex-direction: row;
justify-content: center;
align-items: center;
- margin-bottom: 7px;
}
.descriptionBeacon a {
@@ -166,7 +164,7 @@ p a:hover {
}
.datasetCard {
- width: 40vw;
+ width: 36.7vw;
margin: 30px;
/* border: 2px solid #3b9ad5; */
@@ -212,12 +210,17 @@ p a:hover {
}
.datasetCard p {
- font-size: 12px;
font-weight: normal;
color: rgb(61 60 60);
line-height: 20px;
margin-top: -5px;
+ width: 35vw;
+ text-align: justify;
+ height: 92px;
+ overflow-y: scroll;
+ font-size: 13px;
}
+
.datasetCardResults p {
font-size: 12px;
font-weight: normal;
@@ -229,7 +232,6 @@ p a:hover {
.tittle2 h1 {
font-size: 14px;
font-weight: normal;
- margin: 14px;
color: #5d5454;
}
@@ -269,13 +271,15 @@ p a:hover {
margin-bottom: -3px;
}
.tittle {
- width: 38vw;
+ width: 36vw;
background: #c8d4e6;
border-radius: 2px;
- /* height: 80px; */
+ height: fit-content;
display: flex;
padding: 2px;
flex-direction: column;
+ align-items: center;
+ justify-content: center;
}
.tittleResults {
@@ -321,6 +325,8 @@ p a:hover {
color: rgba(12, 16, 64, 0.606);
font-size: 12px;
font-weight: 600;
+ margin-bottom: 8px;
+ margin-top: 2px;
}
.tittleResults h2 {
@@ -346,6 +352,7 @@ p a:hover {
background: #c8d4e6;
flex-wrap: wrap;
align-items: center;
+ margin-top: 8px;
}
.tittle4 {
@@ -493,7 +500,6 @@ h5 {
.tittle2 h1 {
font-size: 11px;
font-weight: normal;
- margin: 14px;
color: #5d5454;
}
}
@@ -612,7 +618,6 @@ h5 {
font-weight: bold;
/* margin: 14px; */
color: #5d5454;
- margin: 7px;
}
}
diff --git a/frontend/src/components/FilteringTerms/FilteringTerms.css b/frontend/src/components/FilteringTerms/FilteringTerms.css
index d21c068..6cdaf32 100644
--- a/frontend/src/components/FilteringTerms/FilteringTerms.css
+++ b/frontend/src/components/FilteringTerms/FilteringTerms.css
@@ -20,14 +20,14 @@
margin-left: 34px;
border: 1px solid #3176b1;
border-radius: 2px;
- box-shadow: rgba(216, 207, 207, 0.25) 0px 1px 1px, rgba(197, 150, 150, 0.13) 0px 0px 1px 1px;
+ box-shadow: rgba(216, 207, 207, 0.25) 0px 1px 1px,
+ rgba(197, 150, 150, 0.13) 0px 0px 1px 1px;
}
.inputTerm {
display: flex;
align-items: center;
justify-content: flex-start;
-
}
.inputLabel {
@@ -68,12 +68,12 @@ tbody {
height: fit-content;
flex-direction: column;
margin-left: 1vw;
+ align-items: center;
}
.tableWrapper {
height: 100vh;
- width: 85vw;
- overflow: scroll;
+
display: flex;
justify-content: center;
@@ -257,7 +257,8 @@ tbody {
margin-left: 23px;
border: 1px solid #3176b1;
border-radius: 2px;
- box-shadow: rgba(216, 207, 207, 0.25) 0px 1px 1px, rgba(197, 150, 150, 0.13) 0px 0px 1px 1px;
+ box-shadow: rgba(216, 207, 207, 0.25) 0px 1px 1px,
+ rgba(197, 150, 150, 0.13) 0px 0px 1px 1px;
}
tr {
@@ -306,9 +307,99 @@ tr {
}
.tableWrapper {
height: 100vh;
- width: 95vw;
- overflow: scroll;
+
+ display: flex;
+ justify-content: center;
+ }
+}
+
+@media (max-width: 750px) {
+ tbody {
+ width: 96vw !important;
+ }
+ .thead1 {
+ position: sticky;
+ top: 0px;
+ z-index: 2;
+ width: 97%;
+ }
+ .searchTermInput {
+ margin: 5px;
+ width: 70%;
+ height: 28px;
+ /* margin-left: 34px; */
+ border: 1px solid #3176b1;
+ border-radius: 2px;
+ box-shadow: rgba(216, 207, 207, 0.25) 0px 1px 1px,
+ rgba(197, 150, 150, 0.13) 0px 0px 1px 1px;
+ }
+}
+
+@media (max-width: 500px) {
+ .searchTermInput1,
+ .searchTermInput {
+ width: 80%;
+ height: 23px;
+ margin-left: 4px;
+ border: 1px solid #3176b1;
+ border-radius: 2px;
+ box-shadow: rgba(216, 207, 207, 0.25) 0px 1px 1px,
+ rgba(197, 150, 150, 0.13) 0px 0px 1px 1px;
+ font-size: 10px;
+ }
+ .tableWrapper {
+ height: 100vh;
display: flex;
justify-content: center;
+ width: 100vw;
+ }
+
+ .th2 {
+ display: flex;
+ width: 73%;
+ /* height: 100%; */
+ /* justify-content: center; */
+ margin-top: 12px;
+ margin-bottom: 12px;
+ padding-left: 10px;
+ padding-left: 0px;
+ padding-top: 10px;
+ overflow-x: auto;
+ padding-bottom: 10px;
+ align-items: center;
+ font-size: 11px;
+}
+ .th4 {
+ display: flex;
+ width: 104%;
+ /* height: 100%; */
+ /* justify-content: center; */
+ overflow-x: scroll;
+ margin-bottom: -23px;
+ padding-left: 30px;
+ padding-top: 10px;
+ padding-bottom: 10px;
+ font-size: 11px;
+ }
+ input[type='checkbox']:before {
+ content: '✓';
+ font-size: 15px;
+ color: transparent !important;
+ background: #ffffff;
+ display: block;
+ width: 8px;
+ height: 8px;
+ border: 1.8px solid #3176b1;
+ margin-right: 1px;
+ }
+ #table {
+ display: flex;
+ font-size: 15px;
+ width: 90%;
+ height: -moz-fit-content;
+ height: fit-content;
+ flex-direction: column;
+ margin-left: 1vw;
+ align-items: center;
}
}
diff --git a/frontend/src/components/GenomicVariations/VariantsResults.js b/frontend/src/components/GenomicVariations/VariantsResults.js
index 2fadb26..397b84c 100644
--- a/frontend/src/components/GenomicVariations/VariantsResults.js
+++ b/frontend/src/components/GenomicVariations/VariantsResults.js
@@ -466,7 +466,9 @@ function VariantsResults (props) {
}
if (updatedArrayFilterVar.length === 0) {
- beaconsList.push(res.data.response)
+ res.data.responses.forEach(element => {
+ beaconsList.push(element)
+ })
}
let variablePause = false
diff --git a/frontend/src/components/Individuals/IndividualsResults.js b/frontend/src/components/Individuals/IndividualsResults.js
index 666c577..c197aa4 100644
--- a/frontend/src/components/Individuals/IndividualsResults.js
+++ b/frontend/src/components/Individuals/IndividualsResults.js
@@ -316,7 +316,10 @@ function IndividualsResults (props) {
queryArray[index].push('!')
} else {
queryArray[index] = term.split('%')
- queryArray[index].push('%')
+
+ queryArray[index][1] = '%' + queryArray[index][1] + '%'
+ console.log(queryArray[index])
+ queryArray[index].push('=')
}
let alphanumericFilter = {}
@@ -329,7 +332,7 @@ function IndividualsResults (props) {
if (queryArray[index][0].toLowerCase() === 'individual') {
alphanumericFilter = {
id: element.id,
- scope: ['individual']
+ scope: ['individuals']
}
} else if (
queryArray[index][0].toLowerCase() === 'genomicvariation'
@@ -465,18 +468,18 @@ function IndividualsResults (props) {
datasetList.push(res2.data.response.collections)
}
- if (updatedArrayFilterVar.length === 0) {
+ if (updatedArrayFilterVar.length === 0 && props.isNetwork === true) {
res.data.responses.forEach(element => {
beaconsList.push(element)
})
-
+ } else if (updatedArrayFilterVar.length === 0 && props.isNetwork === false){
+ beaconsList.push(res.data.response)
}
let variablePause = false
if (props.query === null || props.query === '') {
// show all individuals
-
let jsonData1 = {}
if (arrayRequestParameters.length > 0) {
@@ -534,6 +537,7 @@ function IndividualsResults (props) {
console.log(jsonData1)
console.log(res)
} else {
+
const headers = { Authorization: `Bearer ${token}` }
console.log('querying with token')
res = await axios.post(
@@ -724,6 +728,7 @@ function IndividualsResults (props) {
}
setTriggerSubmit(true)
} else {
+
let jsonData2 = {}
variablePause = false
@@ -861,6 +866,7 @@ function IndividualsResults (props) {
token = auth.userData.access_token
}
if (token === null) {
+
console.log('Querying without token')
res = await axios.post(
configData.API_URL + '/individuals',
@@ -870,7 +876,7 @@ function IndividualsResults (props) {
console.log(res)
} else {
console.log('Querying WITH token')
-
+
const headers = { Authorization: `Bearer ${token}` }
res = await axios.post(
@@ -878,6 +884,8 @@ function IndividualsResults (props) {
jsonData2,
{ headers: headers }
)
+ console.log(jsonData2)
+ console.log(res)
}
setTimeOut(true)
diff --git a/frontend/src/components/Layout/Layout.css b/frontend/src/components/Layout/Layout.css
index ac832d3..d91be02 100644
--- a/frontend/src/components/Layout/Layout.css
+++ b/frontend/src/components/Layout/Layout.css
@@ -1,10 +1,9 @@
.containerSelection {
display: flex;
width: 100vw;
- align-items: center;
+ /* align-items: center; */
justify-content: center;
margin-bottom: 40px;
- margin-top: -60px;
}
.buttonShowExamples {
@@ -42,6 +41,7 @@
/* margin-top: -53px; */
/* margin-bottom: 10px; */
margin-top: 24px;
+ align-items: center;
}
.buttonAllFilters:hover {
@@ -61,7 +61,12 @@
.formInput {
display: flex;
- align-items: center;
+ align-items: flex-start;
+ margin-top: 0px;
+}
+
+.layout-container {
+ width: 82vw;
}
.moduleAddedVariant h4 {
@@ -77,8 +82,14 @@
width: 90%;
}
+.searchButton:hover {
+ background-color: rgb(180, 196, 210);
+}
+.clearButton:hover {
+ background-color: rgb(180, 196, 210);
+}
+
p {
- font-size: 15px !important;
color: #2a6169;
}
@@ -117,6 +128,8 @@ p {
Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue', sans-serif;
color: #3176b1;
font-weight: 600;
+ border-top-left-radius: 5px;
+ border-top-right-radius: 5px;
}
.tab.active {
@@ -124,11 +137,16 @@ p {
border-top: 1px solid #3176b1;
border-left: 1px solid #3176b1;
border-right: 1px solid #3176b1;
+ border-top-left-radius: 5px;
+ border-top-right-radius: 5px;
}
.tab-content {
padding: 10px;
border: 1px solid #3176b1;
+ border-top-right-radius: 5px;
+ border-bottom-right-radius: 5px;
+ border-bottom-left-radius: 5px;
}
.label-ontology-div label {
@@ -136,15 +154,15 @@ p {
}
.inputSearch {
width: 36vw;
- height: -moz-fit-content;
- height: fit-content;
+ resize: none;
+ padding-top: 6px;
+ height: 85px;
padding-top: -10px;
padding-left: 10px;
font-size: 16px;
- border-radius: 3px;
+ border-radius: 5px;
border: 1px solid #3176b1;
text-overflow: clip;
- line-height: 3.1;
max-width: 50vw;
font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',
@@ -208,7 +226,6 @@ p {
align-content: space-between;
/* justify-content: space-around; */
align-items: flex-end;
- margin-top: 30px;
}
.moduleAddedVariant2 h2 {
@@ -339,11 +356,12 @@ label {
}
.resetButton {
- background-color: rgb(249, 249, 249);
- border: 1px solid rgb(169, 169, 216);
+ background-color: #ddf2f7;
+ border: 1.9px solid rgb(37 66 200);
border-radius: 2px;
- margin-bottom: 3px;
cursor: pointer;
+ height: 28px;
+ margin-left: 5px;
}
.resetButton:hover {
@@ -373,6 +391,7 @@ h14 {
color: #64646a;
margin-left: 10px;
margin-right: 10px;
+ margin-top: 4.2px;
}
.label:hover + .onHover {
@@ -472,7 +491,7 @@ h14 {
.formula {
width: 20px;
margin-right: 12.5px;
- margin-left: 7px;
+ margin-left: 6px;
}
.dictionary {
@@ -568,27 +587,16 @@ h14 {
/* margin-left: -10px; */
/* padding-top: 30px; */
/* padding-left: 26px; */
-
}
}
@media (max-width: 1200px) {
.inputSearch {
width: 28vw;
- height: fit-content;
- padding: 10px;
- font-size: 14 px;
+
border: 1px solid #3176b1;
- border-radius: 3px;
text-overflow: clip;
max-width: 38vw;
}
- .containerSelection {
- display: flex;
- align-items: center;
- justify-content: center;
- margin-bottom: 40px;
- margin-top: -60px;
- }
}
@media (max-width: 900) {
ul div {
@@ -605,46 +613,63 @@ h14 {
@media (max-width: 950px) {
.inputSearch {
width: 28vw;
- height: fit-content;
- padding: 10px;
+
font-size: 14 px;
border: 1px solid #3176b1;
text-overflow: clip;
max-width: 40vw;
- border-radius: 3px;
}
- .containerSelection {
+ .buttonText {
+ display: none !important;
+ }
+ .searchButton {
+ cursor: pointer;
+ margin-left: 12px;
+ border: none;
+ border-radius: 100px;
+ background: #3176b1;
+ padding: 10px, 24px, 10px, 16px;
+ color: white;
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI',
+ Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue',
+ sans-serif;
+ font-size: 14px;
display: flex;
+ font-weight: 500;
+ width: 99px;
+ height: 40px;
+ width: 40px;
+ justify-content: space-evenly;
align-items: center;
- justify-content: center;
- margin-bottom: 40px;
- margin-top: -60px;
}
- .selectModule1 {
- width: 150px !important;
- }
-}
-
-@media (max-width: 950px) {
- .inputSearch {
- width: 28vw;
- height: fit-content;
- padding: 10px;
- font-size: 14 px;
+ .clearButton {
+ cursor: pointer;
+ margin-left: 12px;
+ border: none;
+ border-radius: 100px;
+ background: white;
+ padding: 10px, 24px, 10px, 16px;
+ color: #3176b1;
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI',
+ Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue',
+ sans-serif;
+ font-size: 14px;
+ display: flex;
+ font-weight: 500;
+ width: 40px;
+ height: 40px;
+ justify-content: space-evenly;
+ align-items: center;
border: 1px solid #3176b1;
- text-overflow: clip;
- max-width: 80vw;
- border-radius: 3px;
}
.containerSelection {
+ flex-wrap: wrap;
display: flex;
- align-items: center;
+ width: 100vw;
+ /* align-items: center; */
justify-content: center;
margin-bottom: 40px;
- margin-top: 20px;
- width: 100vw;
- flex-wrap: wrap;
}
ul {
@@ -683,7 +708,97 @@ h14 {
}
}
+@media (max-width: 750px) {
+ .inputSearch {
+ width: 63vw;
+
+ font-size: 13px;
+ border: 1px solid #3176b1;
+ text-overflow: clip;
+ max-width: 80vw;
+ margin-top: 10px;
+ margin-left: 26px;
+ }
+ .filterTermsContainer {
+ display: flex;
+ width: 84vw;
+ justify-content: space-evenly;
+ /* margin-bottom: 18px; */
+ flex-wrap: wrap;
+ height: -moz-fit-content;
+ height: fit-content;
+ border: none;
+ /* margin-left: -10px; */
+ padding-top: 30px;
+ padding-left: 0px;
+ /* border-radius: 8px; */
+ }
+ s .containerSelection {
+ margin-top: 12px;
+ }
+}
+
@media (max-width: 500px) {
+ .searchButton {
+ cursor: pointer;
+ margin-left: 12px;
+ border: none;
+ border-radius: 100px;
+ background: #3176b1;
+ padding: 10px, 24px, 10px, 16px;
+ color: white;
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI',
+ Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue',
+ sans-serif;
+ font-size: 14px;
+ display: flex;
+ font-weight: 500;
+ width: 99px;
+ height: 36px;
+ width: 36px;
+ justify-content: space-evenly;
+ align-items: center;
+ }
+ .clearButton {
+ cursor: pointer;
+ margin-left: 12px;
+ border: none;
+ border-radius: 100px;
+ background: white;
+ padding: 10px, 24px, 10px, 16px;
+ color: #3176b1;
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI',
+ Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue',
+ sans-serif;
+ font-size: 14px;
+ display: flex;
+ font-weight: 500;
+ width: 36px;
+ height: 36px;
+ justify-content: space-evenly;
+ align-items: center;
+ border: 1px solid #3176b1;
+ }
+
+ .buttonsDiv {
+ /* height: 105px; */
+ height: 105px;
+ display: flex;
+ flex-direction: column;
+ /* justify-content: space-around; */
+ margin-top: 5px;
+ }
+ .buttonAllFilters h4 {
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI',
+ Roboto, Oxygen, Ubuntu, Cantarell, 'Open Sans', 'Helvetica Neue',
+ sans-serif;
+ font-size: 12px;
+ color: #3176b1;
+ margin-left: 3px;
+ margin-bottom: 0px;
+ margin-top: 0px;
+ font-weight: 600;
+ }
ul {
padding-left: 0;
@@ -698,6 +813,9 @@ h14 {
.scopeSelection h10 {
font-size: 12px;
}
+ .formInput {
+ margin-top: 12px;
+ }
.scopeSelection {
position: absolute;
top: 286px;
@@ -722,6 +840,20 @@ h14 {
select {
height: 21px;
}
+
+ .inputSearch {
+ margin-left: 0px;
+ }
+
+ .resetButton {
+ background-color: #ddf2f7;
+ border: 1.9px solid rgb(37 66 200);
+ border-radius: 2px;
+ cursor: pointer;
+ height: 25px;
+ margin-left: 5px;
+ font-size: 12px;
+ }
}
@media (max-width: 300px) {
diff --git a/frontend/src/components/Layout/Layout.js b/frontend/src/components/Layout/Layout.js
index 5a87458..ac19ba9 100644
--- a/frontend/src/components/Layout/Layout.js
+++ b/frontend/src/components/Layout/Layout.js
@@ -207,7 +207,7 @@ function Layout (props) {
const arrayQuery = title
.map((titleQuery, indexQuery) =>
- titleQuery === 'geneId'
+ titleQuery === 'geneId' || titleQuery === 'aminoacidChange'
? `${titleQuery}:${value[indexQuery]}`
: `${titleQuery}=${value[indexQuery]}`
)
@@ -477,7 +477,7 @@ function Layout (props) {
>
-
v0.5.5
+ v0.5.6
@@ -516,20 +516,25 @@ function Layout (props) {
value={query}
onChange={e => search(e)}
/>
-
-
+
+
+
+
diff --git a/frontend/src/components/NavBar/Navbar.css b/frontend/src/components/NavBar/Navbar.css
index f0ba69f..4c3abf7 100644
--- a/frontend/src/components/NavBar/Navbar.css
+++ b/frontend/src/components/NavBar/Navbar.css
@@ -1,3 +1,6 @@
+.h1Menu{
+ color: white !important;
+}
@media (min-width: 1410px) {
/* … */
.nav4 {
@@ -511,7 +514,6 @@
/* margin-bottom: 5px; */
padding-right: 10px;
padding-left: 10px;
- color: white !important;
text-decoration: none !important;
font-weight: 500;
}
diff --git a/frontend/src/components/NavBar/Navbar.js b/frontend/src/components/NavBar/Navbar.js
index 8ed6831..6296e98 100644
--- a/frontend/src/components/NavBar/Navbar.js
+++ b/frontend/src/components/NavBar/Navbar.js
@@ -266,7 +266,7 @@ function Navbar () {
}
>
{' '}
- Beacon Info
+ Beacon Info
)}
{isNetwork && (
@@ -278,7 +278,7 @@ function Navbar () {
}
>
{' '}
- Network members
+ Network members
)}
@@ -291,7 +291,7 @@ function Navbar () {
isActive ? 'Sign-in5' : 'Sign-in6'
}
>
- Log in
+ Log in
)}
@@ -310,7 +310,7 @@ function Navbar () {
src='/../logout.png'
alt='ls-login-image2'
/>
- Log out
+ Log out
{userNameToShare}
>
@@ -397,7 +397,7 @@ function Navbar () {
}
>
{' '}
- Beacon Info
+ Beacon Info
)}
{isNetwork && (
@@ -409,7 +409,7 @@ function Navbar () {
}
>
{' '}
- Network members
+ Network members
)}
{!isLoggedIn && (
@@ -421,7 +421,7 @@ function Navbar () {
isActive ? 'Sign-in5' : 'Sign-in6'
}
>
- Log in
+ Log in
)}
{isLoggedIn && (
@@ -439,7 +439,7 @@ function Navbar () {
src='/../logout.png'
alt='ls-login-image2'
/>
- Log out
+ Log out
diff --git a/frontend/src/components/Results/BiosamplesResults/TableResultsBiosamples.js b/frontend/src/components/Results/BiosamplesResults/TableResultsBiosamples.js
index 1b04fd1..33ff105 100644
--- a/frontend/src/components/Results/BiosamplesResults/TableResultsBiosamples.js
+++ b/frontend/src/components/Results/BiosamplesResults/TableResultsBiosamples.js
@@ -826,136 +826,150 @@ function TableResultsBiosamples (props) {
return (
- {showDatsets === true &&
+ {showDatsets === true &&
props.beaconsList.map((result, beaconIndex) => {
return (
-
-
-
-
-
- {props.results.length > 0 &&
- props.resultsPerDataset.map((dataset, index2) => {
- const totalCount = dataset[3]
- ? dataset[3].reduce((acc, count) => acc + count, 0)
- : 0
- const allTrue = dataset[2]
- ? dataset[2].every(booleanElement => booleanElement)
- : 'No, sorry'
-
- return (
-
- toggleRow(index2)}
- >
-
- {dataset[0]}
- {expandedRows.includes(index2) ? (
-
- ) : (
-
+ <>
+ {beaconIndex === 0 && (
+
+
+
+
+
+ {props.results.length > 0 &&
+ props.resultsPerDataset.map((dataset, index2) => {
+ const totalCount = dataset[3]
+ ? dataset[3].reduce((acc, count) => acc + count, 0)
+ : 0
+ const allTrue = dataset[2]
+ ? dataset[2].every(booleanElement => booleanElement)
+ : 'No, sorry'
+
+ return (
+
+ toggleRow(index2)}
+ >
+
+ {dataset[0]}
+ {expandedRows.includes(index2) ? (
+
+ ) : (
+
+ )}
+ |
+ |
+
+ {props.show === 'boolean'
+ ? allTrue
+ ? 'YES'
+ : 'No, sorry'
+ : totalCount}
+ |
+
+ {expandedRows.includes(index2) && (
+
+ {props.show === 'boolean' &&
+ dataset[2].map(
+ (booleanElement, booleanIndex) => (
+
+ |
+
+ {dataset[1][booleanIndex]}
+ |
+
+ {booleanElement ? 'YES' : 'No, sorry'}
+ |
+
+ )
+ )}
+ {props.show === 'count' &&
+ dataset[3].map((countElement, countIndex) => (
+
+ |
+
+ {dataset[1][countIndex]}
+ |
+
+ {countElement}
+ |
+
+ ))}
+
)}
-
- |
-
- {props.show === 'boolean'
- ? allTrue
- ? 'YES'
- : 'No, sorry'
- : totalCount}
- |
-
- {expandedRows.includes(index2) && (
-
- {props.show === 'boolean' &&
- dataset[2].map((booleanElement, booleanIndex) => (
-
- |
-
- {dataset[1][booleanIndex]}
- |
-
- {booleanElement ? 'YES' : 'No, sorry'}
- |
-
- ))}
- {props.show === 'count' &&
- dataset[3].map((countElement, countIndex) => (
-
- |
-
- {dataset[1][countIndex]}
- |
-
- {countElement}
- |
-
- ))}
- )}
-
- )
- })}
- {props.results.length === 0 && (
-
- toggleRow(beaconIndex)}
- >
- {result.id} |
- |
- {props.show === 'boolean' && (
-
- No, sorry
- |
- )}
- {props.show === 'count' && (
- 0 results |
- )}
-
-
- )}
-
-
+ )
+ })}
+ {props.results.length === 0 &&
+ props.beaconsList.map((beacon, index2) => {
+ const totalCount = 0
+ const allTrue = 'No, sorry'
+
+ return (
+
+ toggleRow(index2)}
+ >
+
+ {beacon.response.name}
+
+ |
+ |
+
+ {props.show === 'boolean'
+ ? allTrue
+ ? 'YES'
+ : 'No, sorry'
+ : totalCount}
+ |
+
+
+ )
+ })}
+ |
+
+ )}
+ >
)
})}
diff --git a/frontend/src/components/Results/IndividualsResults/TableResultsIndividuals.css b/frontend/src/components/Results/IndividualsResults/TableResultsIndividuals.css
index 02a24f5..2205dcf 100644
--- a/frontend/src/components/Results/IndividualsResults/TableResultsIndividuals.css
+++ b/frontend/src/components/Results/IndividualsResults/TableResultsIndividuals.css
@@ -321,11 +321,13 @@ tr {
width: 328px;
font-family: sans-serif;
/* padding: 8px; */
- text-align: center;
+ /* text-align: center; */
display: flex;
- align-items: center;
+ word-break: break-all;
+ /* align-items: center; */
align-content: center;
- justify-content: flex-start;
+ /* justify-content: flex-start; */
+
}
.tdGranuNoResults,
diff --git a/frontend/src/components/Results/IndividualsResults/TableResultsIndividuals.js b/frontend/src/components/Results/IndividualsResults/TableResultsIndividuals.js
index cd6af17..961a766 100644
--- a/frontend/src/components/Results/IndividualsResults/TableResultsIndividuals.js
+++ b/frontend/src/components/Results/IndividualsResults/TableResultsIndividuals.js
@@ -5,7 +5,7 @@ import CrossQueries from '../../CrossQueries/CrossQueries'
import { FaBars, FaEye, FaEyeSlash } from 'react-icons/fa' // Import icons from react-icons library
import { FiLayers, FiDownload } from 'react-icons/fi'
-function TableResultsIndividuals(props) {
+function TableResultsIndividuals (props) {
const [showDatsets, setShowDatasets] = useState(false)
const [showResults, setShowResults] = useState(false)
const [resultsSelected, setResultsSelected] = useState(props.results)
@@ -53,6 +53,23 @@ function TableResultsIndividuals(props) {
setMenuVisible(prevState => !prevState)
}
+ const getBeaconName = (beaconId, beaconsList) => {
+ if (beaconId === 'org.progenetix') {
+ beaconId = 'org.progenetix.beacon'
+ }
+ beaconsList.forEach(element => {
+ console.log(element.id)
+ })
+
+ const beacon = beaconsList.find(b => (b.response?.id ?? b.id) === beaconId)
+
+ return beacon
+ ? beacon.response
+ ? beacon.response.name
+ : beacon.name
+ : beacon.id
+ }
+
const [columnVisibility, setColumnVisibility] = useState({
IndividualId: true,
ethnicity: true,
@@ -513,10 +530,13 @@ function TableResultsIndividuals(props) {
const totalCount = dataset[3]
? dataset[3].reduce((acc, count) => acc + count, 0)
: 0
- const allTrue = dataset[2]
- ? dataset[2].every(booleanElement => booleanElement)
- : 'No, sorry'
-
+ const hasTrueElement = dataset[2]
+ ? dataset[2].some(booleanElement => booleanElement)
+ : false
+ const beaconName = getBeaconName(
+ dataset[0],
+ props.beaconsList
+ )
return (
toggleRow(index2)}
>
- {dataset[0]}
+ {beaconName}
{expandedRows.includes(index2) ? (
) : (
@@ -534,7 +554,7 @@ function TableResultsIndividuals(props) {
| |
{props.show === 'boolean'
- ? allTrue
+ ? hasTrueElement
? 'YES'
: 'No, sorry'
: totalCount}
@@ -610,7 +630,7 @@ function TableResultsIndividuals(props) {
{props.results.length === 0 &&
props.beaconsList.map((beacon, index2) => {
const totalCount = 0
- const allTrue = 'No, sorry'
+ const hasTrueElement = false
return (
@@ -620,12 +640,11 @@ function TableResultsIndividuals(props) {
>
{beacon.response.name}
-
|
|
{props.show === 'boolean'
- ? allTrue
+ ? hasTrueElement
? 'YES'
: 'No, sorry'
: totalCount}
diff --git a/frontend/src/components/Results/VariantResults/TableResultsVariant.js b/frontend/src/components/Results/VariantResults/TableResultsVariant.js
index 875f0cd..0f6b99a 100644
--- a/frontend/src/components/Results/VariantResults/TableResultsVariant.js
+++ b/frontend/src/components/Results/VariantResults/TableResultsVariant.js
@@ -481,139 +481,151 @@ function TableResultsVariants (props) {
return (
{showDatsets === true &&
- props.beaconsList.map((result, beaconIndex) => {
+ props.beaconsList.map((result, beaconIndex) => {
return (
-
-
-
-
-
- {props.results.length > 0 &&
- props.resultsPerDataset.map((dataset, index2) => {
- const totalCount = dataset[3]
- ? dataset[3].reduce((acc, count) => acc + count, 0)
- : 0
- const allTrue = dataset[2]
- ? dataset[2].every(booleanElement => booleanElement)
- : 'No, sorry'
-
- return (
-
- toggleRow(index2)}
- >
-
- {dataset[0]}
- {expandedRows.includes(index2) ? (
-
- ) : (
-
+ <>
+ {beaconIndex === 0 && (
+
+
+
+
+
+ {props.results.length > 0 &&
+ props.resultsPerDataset.map((dataset, index2) => {
+ const totalCount = dataset[3]
+ ? dataset[3].reduce((acc, count) => acc + count, 0)
+ : 0
+ const allTrue = dataset[2]
+ ? dataset[2].every(booleanElement => booleanElement)
+ : 'No, sorry'
+
+ return (
+
+ toggleRow(index2)}
+ >
+
+ {dataset[0]}
+ {expandedRows.includes(index2) ? (
+
+ ) : (
+
+ )}
+ |
+ |
+
+ {props.show === 'boolean'
+ ? allTrue
+ ? 'YES'
+ : 'No, sorry'
+ : totalCount}
+ |
+
+ {expandedRows.includes(index2) && (
+
+ {props.show === 'boolean' &&
+ dataset[2].map(
+ (booleanElement, booleanIndex) => (
+
+ |
+
+ {dataset[1][booleanIndex]}
+ |
+
+ {booleanElement ? 'YES' : 'No, sorry'}
+ |
+
+ )
+ )}
+ {props.show === 'count' &&
+ dataset[3].map((countElement, countIndex) => (
+
+ |
+
+ {dataset[1][countIndex]}
+ |
+
+ {countElement}
+ |
+
+ ))}
+
)}
-
- |
-
- {props.show === 'boolean'
- ? allTrue
- ? 'YES'
- : 'No, sorry'
- : totalCount}
- |
-
- {expandedRows.includes(index2) && (
-
- {props.show === 'boolean' &&
- dataset[2].map((booleanElement, booleanIndex) => (
-
- |
-
- {dataset[1][booleanIndex]}
- |
-
- {booleanElement ? 'YES' : 'No, sorry'}
- |
-
- ))}
- {props.show === 'count' &&
- dataset[3].map((countElement, countIndex) => (
-
- |
-
- {dataset[1][countIndex]}
- |
-
- {countElement}
- |
-
- ))}
- )}
-
- )
- })}
- {props.results.length === 0 && (
-
- toggleRow(beaconIndex)}
- >
- {result.id} |
- |
- {props.show === 'boolean' && (
-
- No, sorry
- |
- )}
- {props.show === 'count' && (
- 0 results |
- )}
-
-
- )}
-
-
+ )
+ })}
+ {props.results.length === 0 &&
+ props.beaconsList.map((beacon, index2) => {
+ const totalCount = 0
+ const allTrue = 'No, sorry'
+
+ return (
+
+ toggleRow(index2)}
+ >
+
+ {beacon.response.name}
+ |
+ |
+
+ {props.show === 'boolean'
+ ? allTrue
+ ? 'YES'
+ : 'No, sorry'
+ : totalCount}
+ |
+
+
+ )
+ })}
+ |
+
+ )}
+ >
)
})}
-
{!showCrossQuery &&
showDatsets === false &&
props.results.length > 0 &&
@@ -1001,7 +1013,7 @@ function TableResultsVariants (props) {
!showCrossQuery && (
No results, sorry.
)}
-
+
{showCrossQuery && (
| |