From eb22db6dc0d28dfa1989056d18fa7bef125aac44 Mon Sep 17 00:00:00 2001 From: el-rabies Date: Wed, 8 Apr 2026 11:33:50 -0400 Subject: [PATCH 1/6] feat: Added Optional Refrence Search Mode --- .../description-tab.component.html | 8 +- .../search-bar/search-bar.component.html | 4 +- .../search/search-bar/search-bar.component.ts | 8 +- .../src/app/search/search.component.html | 193 +++++++++++++++-- .../src/app/search/search.component.scss | 105 +++++++++ .../src/app/search/search.component.ts | 199 +++++++++++++++++- .../src/services/search.service.ts | 1 + 7 files changed, 485 insertions(+), 33 deletions(-) diff --git a/projects/pathway-browser/src/app/details/tabs/description-tab/description-tab.component.html b/projects/pathway-browser/src/app/details/tabs/description-tab/description-tab.component.html index a7cc73e..15d2421 100644 --- a/projects/pathway-browser/src/app/details/tabs/description-tab/description-tab.component.html +++ b/projects/pathway-browser/src/app/details/tabs/description-tab/description-tab.component.html @@ -32,7 +32,7 @@
- + Details page @@ -163,7 +163,7 @@
{{ item.key }}
@for (pe of item.value; let i = $index; track pe.dbId) { - {{ pe.name[0] }} + {{ pe.name[0] }} @if (i < item.value.length - 1) { , @@ -183,7 +183,7 @@
{{ item.key }}
@for (pe of item.value; let i = $index; track pe.dbId) { - {{ pe.name[0] }} + {{ pe.name[0] }} @if (i < item.value.length - 1) { , @@ -251,7 +251,7 @@ @for (ie of item.data; track $index) {
@for (author of ie.author; let i = $index; track $index) { - {{ author.firstname }} {{ author.surname }} diff --git a/projects/website-angular/src/app/search/search-bar/search-bar.component.html b/projects/website-angular/src/app/search/search-bar/search-bar.component.html index c664b90..396ea77 100644 --- a/projects/website-angular/src/app/search/search-bar/search-bar.component.html +++ b/projects/website-angular/src/app/search/search-bar/search-bar.component.html @@ -1,4 +1,4 @@ -@if (!advancedMode) { +@if (currentMode === 'simple' || currentMode === 'reference') {
-} @if (advancedMode) { +} @if (currentMode === 'advanced') { - +
- @if (advancedMode) { - + @if (currentMode === 'advanced') { + } @else { - + }
@@ -273,11 +277,108 @@

Please report to us and we will get back shortly.

@if (!collapsedGroups[group.typeName]) { -
+ @if (currentMode === 'reference') { +
+ @if (group.typeName === 'Protein' && proteinLoading) { +
Loading all protein forms...
+ } + @for (entry of getGroupPageEntries(group); track entry.dbId) { +
+
+ + {{ entry.id || entry.stId }} +
+ @if (entry.species?.length) { +
+ @for (sp of entry.species; track sp; let last = $last) { + {{ sp }} + } +
+ } + @if (entry.compartmentNames?.length) { +
+ Compartments: {{ entry.compartmentNames.join(', ') }} +
+ } + @if (entry.summation) { +

+ } + @if (entry.referenceName) { +
+ Reference: ({{ entry.referenceIdentifier }}) +
+ } + @if (entry.type === 'Protein' && entry.referenceIdentifier && getProteinFormCount(entry) > 1) { + + @if (isFormsExpanded(entry)) { +
+ @for (form of getProteinForms(entry); track form.dbId) { +
+ + {{ form.id || form.stId }} + @if (form.compartmentNames?.length) { + {{ form.compartmentNames.join(', ') }} + } +
+ } +
+ } + } +
+ @if (getGroupTotalPages(group) > 1 && !(group.typeName === 'Protein' && proteinLoading)) { + + } + } +
+ } @else { +
@for (entry of group.entries; track entry.dbId) {
@@ -300,9 +401,9 @@

{{ group.typeName }} ({{ group.entriesCount }})

} @else { + [innerHTML]="entry.name || entry.referenceName"> - + }
@@ -351,6 +452,7 @@

{{ group.typeName }} ({{ group.entriesCount }})

}
+ } }
@@ -385,6 +487,25 @@

{{ group.typeName }} ({{ group.entriesCount }})

Reference: ({{ entry.referenceIdentifier }})
} + @if (currentMode === 'reference' && entry.type === 'Protein' && entry.referenceIdentifier && getProteinFormCount(entry) > 1) { + + @if (isFormsExpanded(entry)) { +
+ @for (form of getProteinForms(entry); track form.dbId) { +
+ + {{ form.id || form.stId }} + @if (form.compartmentNames?.length) { + {{ form.compartmentNames.join(', ') }} + } +
+ } +
+ } + }
} @@ -394,7 +515,44 @@

{{ group.typeName }} ({{ group.entriesCount }})

@if (totalPages > 1) { -