[Library | Trunk]: Landing: 1. Remove uk-text-small from Results. 2. Revert copyright policy link on Journal. 3. Add tag free text keywords on subjects

git-svn-id: https://svn.driver.research-infrastructures.eu/driver/dnet40/modules/uoa-services-library/trunk/ng-openaire-library/src/app@58784 d315682c-612b-4755-9ff5-7f18f6832af3
This commit is contained in:
k.triantafyllou 2020-05-26 14:42:47 +00:00
parent 8e0a427b0b
commit 632f1586c2
13 changed files with 69 additions and 90 deletions

View File

@ -25,12 +25,12 @@ import {EnvProperties} from "../../utils/properties/env-properties";
{{available.downloadName}} {{available.downloadName}}
<span class="custom-external custom-icon space"></span> <span class="custom-external custom-icon space"></span>
</a> </a>
<div *ngIf="removeUnknown(available.type) || available.year" class="uk-text-small"> <div *ngIf="removeUnknown(available.type) || available.year">
<span *ngIf="removeUnknown(available.type)" class="uk-text-capitalize">{{available.type}}</span> <span *ngIf="removeUnknown(available.type)" class="uk-text-capitalize">{{available.type}}</span>
<span *ngIf="removeUnknown(available.type) && available.year"> . </span> <span *ngIf="removeUnknown(available.type) && available.year"> . </span>
<span *ngIf="available.year">{{available.year}}</span> <span *ngIf="available.year">{{available.year}}</span>
</div> </div>
<div *ngIf="available.collectedName" class="uk-text-small provider"> <div *ngIf="available.collectedName" class="provider">
<span>Provider: </span> <span>Provider: </span>
<a *ngIf="available.collectedId" routerLink="/search/dataprovider" [queryParams]="{datasourceId: available.collectedId}"> <a *ngIf="available.collectedId" routerLink="/search/dataprovider" [queryParams]="{datasourceId: available.collectedId}">
{{available.collectedName}} {{available.collectedName}}

View File

@ -5,7 +5,6 @@ import {Project} from "../../utils/result-preview/result-preview";
@Component({ @Component({
selector: 'fundedBy', selector: 'fundedBy',
template: ` template: `
<div class="uk-text-small">
<div class="uk-text-muted">Funded by</div> <div class="uk-text-muted">Funded by</div>
<span *ngFor="let item of fundedByProjects.slice(0, showNum) let i=index"> <span *ngFor="let item of fundedByProjects.slice(0, showNum) let i=index">
<a> <a>
@ -26,7 +25,7 @@ import {Project} from "../../utils/result-preview/result-preview";
</a> </a>
<div class="default-dropdown uk-margin-remove-top uk-padding-small uk-dropdown" <div class="default-dropdown uk-margin-remove-top uk-padding-small uk-dropdown"
uk-dropdown="pos: bottom-left; mode:click"> uk-dropdown="pos: bottom-left; mode:click">
<span class="uk-text-small">Project</span> <span>Project</span>
<div class="uk-margin-bottom"> <div class="uk-margin-bottom">
<a *ngIf="item.id" class="uk-h6 uk-margin-remove portal-link" <a *ngIf="item.id" class="uk-h6 uk-margin-remove portal-link"
[queryParams]="{projectId: item.id}" routerLink="/search/project"> [queryParams]="{projectId: item.id}" routerLink="/search/project">
@ -54,13 +53,12 @@ import {Project} from "../../utils/result-preview/result-preview";
<span class="uk-text-muted">Funding stream: </span>{{item.funding}} <span class="uk-text-muted">Funding stream: </span>{{item.funding}}
</li> </li>
</ul> </ul>
<div *ngIf="item.provenanceAction" class="uk-text-small uk-text-muted"> <div *ngIf="item.provenanceAction" class="uk-text-muted">
{{item.provenanceAction}} {{item.provenanceAction}}
</div> </div>
</div> </div>
<span *ngIf="i < (fundedByProjects.slice(0, showNum).length - 1)">, </span> <span *ngIf="i < (fundedByProjects.slice(0, showNum).length - 1)">, </span>
</span> </span>
</div>
<div *ngIf="showNum > threshold" class="uk-text-right uk-margin-bottom"> <div *ngIf="showNum > threshold" class="uk-text-right uk-margin-bottom">
<a (click)="showNum = threshold; scroll()"> <a (click)="showNum = threshold; scroll()">
View less View less

View File

@ -7,7 +7,7 @@ import {AlertModal} from "../../../utils/modal/alert";
selector: 'landing-header', selector: 'landing-header',
template: ` template: `
<div class="title-section uk-margin-bottom" [ngClass]="titleClass"> <div class="title-section uk-margin-bottom" [ngClass]="titleClass">
<div class="uk-text-small"> <div>
<span *ngIf="entityType" class="uk-text-capitalize"> <span *ngIf="entityType" class="uk-text-capitalize">
{{entityType}} {{entityType}}
</span> </span>

View File

@ -8,7 +8,6 @@ import {ErrorCodes} from '../../utils/properties/errorCodes';
import {StringUtils} from '../../utils/string-utils.class'; import {StringUtils} from '../../utils/string-utils.class';
import {RouterHelper} from '../../utils/routerHelper.class'; import {RouterHelper} from '../../utils/routerHelper.class';
import {EnvProperties} from '../../utils/properties/env-properties'; import {EnvProperties} from '../../utils/properties/env-properties';
import {ResultLandingInfo} from "../../utils/entities/resultLandingInfo";
import {ResultPreview} from "../../utils/result-preview/result-preview"; import {ResultPreview} from "../../utils/result-preview/result-preview";
import {SearchResult} from "../../utils/entities/searchResult"; import {SearchResult} from "../../utils/entities/searchResult";
import {AlertModal} from "../../utils/modal/alert"; import {AlertModal} from "../../utils/modal/alert";
@ -16,7 +15,7 @@ import {AlertModal} from "../../utils/modal/alert";
@Component({ @Component({
selector: 'projectsInModal', selector: 'projectsInModal',
template: ` template: `
<div *ngIf="fetchProjects.funders.length > 1" class="uk-margin-small-bottom">Filter by Funder:</div> <div *ngIf="fetchProjects.funders.length > 1" class="uk-margin-small-bottom uk-text-muted">Filter by Funder:</div>
<ul *ngIf="fetchProjects.funders.length > 1" class="uk-list uk-list-divider uk-margin-remove"> <ul *ngIf="fetchProjects.funders.length > 1" class="uk-list uk-list-divider uk-margin-remove">
<li *ngFor="let filter of fetchProjects.filters "> <li *ngFor="let filter of fetchProjects.filters ">
<span *ngFor="let value of filter.values" class="uk-animation-fade uk-margin-small-right"> <span *ngFor="let value of filter.values" class="uk-animation-fade uk-margin-small-right">

View File

@ -4,7 +4,6 @@ import {HelperFunctions} from "../../utils/HelperFunctions.class";
@Component({ @Component({
selector: 'relatedTo', selector: 'relatedTo',
template: ` template: `
<div class="uk-text-small">
<div class="uk-text-muted">Communities</div> <div class="uk-text-muted">Communities</div>
<div class="uk-margin-small-left" *ngFor="let item of contexts.slice(0, showNum); let i=index"> <div class="uk-margin-small-left" *ngFor="let item of contexts.slice(0, showNum); let i=index">
<span *ngIf="!item['inline']"> <span *ngIf="!item['inline']">
@ -20,7 +19,6 @@ import {HelperFunctions} from "../../utils/HelperFunctions.class";
<span *ngIf="item['labelConcept']">: {{item['labelConcept']}}</span> <span *ngIf="item['labelConcept']">: {{item['labelConcept']}}</span>
</mark> </mark>
</div> </div>
</div>
<div *ngIf="showNum > threshold" class="uk-text-right"> <div *ngIf="showNum > threshold" class="uk-text-right">
<a (click)="showNum = threshold; scroll()"> <a (click)="showNum = threshold; scroll()">
View less View less

View File

@ -46,26 +46,24 @@ import {EnvProperties} from "../../utils/properties/env-properties";
</span> </span>
<span *ngIf=" journal['journal'] && (journal['issn'] || journal['eissn'] || journal['lissn'])"> (</span> <span *ngIf=" journal['journal'] && (journal['issn'] || journal['eissn'] || journal['lissn'])"> (</span>
<ng-container *ngIf="journal['issn']"> <ng-container *ngIf="journal['issn']">
<a target="_blank" class="uk-display-inline-block" [href]="properties.sherpaURL+journal['issn'] + properties.sherpaURLSuffix"> <span class="uk-display-inline-block">issn: {{journal['issn']}}</span>
<img src="assets/common-assets/common/SHERPA-RoMEO-short-logo.gif" width=16 height=16 alt=""> <span>, </span>
issn: {{journal['issn']}}<span class="custom-external custom-icon space"></span>
</a>
<span *ngIf="journal['eissn'] || journal['lissn']">, </span>
</ng-container> </ng-container>
<ng-container *ngIf="journal['eissn']"> <ng-container *ngIf="journal['eissn']">
<a *ngIf="!journal.issn" target="_blank" class="uk-display-inline-block" [href]="properties.sherpaURL+journal['eissn'] + properties.sherpaURLSuffix"> <span class="uk-display-inline-block">eissn: {{journal['eissn']}}</span>
<img src="assets/common-assets/common/SHERPA-RoMEO-short-logo.gif" width=16 height=16 alt=""> <span>, </span>
eissn: {{journal['eissn']}}<span class="custom-external custom-icon space"></span>
</a>
<span *ngIf="journal.issn" class="uk-display-inline-block">eissn: {{journal['eissn']}}</span>
<span *ngIf="journal['lissn']">, </span>
</ng-container> </ng-container>
<span *ngIf="journal['lissn']" class="uk-display-inline-block"> <span *ngIf="journal['lissn']" class="uk-display-inline-block">
<a *ngIf="!journal.issn && !journal.eissn" target="_blank" class="uk-display-inline-block" [href]="properties.sherpaURL+journal['eissn'] + properties.sherpaURLSuffix"> <span class="uk-display-inline-block">lissn: {{journal['lissn']}}</span>(kostis)
<span>, </span>
</span>
<span *ngIf="journal && (journal['issn'] ||journal['lissn'] || journal['eissn'] )">
<a target="_blank"
[href]="properties.sherpaURL+(journal['issn']?journal['issn']:(journal['eissn']?journal['eissn']:journal['lissn'] ))+properties.sherpaURLSuffix"
uk-tooltip="title: View information on Sherpa/RoMEO ">
<img src="assets/common-assets/common/SHERPA-RoMEO-short-logo.gif" width=16 height=16 alt=""> <img src="assets/common-assets/common/SHERPA-RoMEO-short-logo.gif" width=16 height=16 alt="">
lissn: {{journal['lissn']}}<span class="custom-external custom-icon space"></span> Copyright policy<span class="custom-external custom-icon space"></span>
</a> </a>
<span *ngIf="journal.issn || journal.eissn" class="uk-display-inline-block">lissn: {{journal['lissn']}}</span>
</span> </span>
<span *ngIf=" journal['journal'] && (journal['issn'] || journal['eissn'] || journal['lissn'])">)</span> <span *ngIf=" journal['journal'] && (journal['issn'] || journal['eissn'] || journal['lissn'])">)</span>
</span> </span>

View File

@ -6,8 +6,9 @@ import {Component, Input} from '@angular/core';
<div class="uk-text-muted"> <div class="uk-text-muted">
Subjects Subjects
</div> </div>
<div *ngIf="classifiedSubjects && classifiedSubjects.size > 0" class="uk-text-small uk-text-small">
<div class="uk-margin-small-top"> <div class="uk-margin-small-top">
<div>
<ng-container *ngIf="classifiedSubjects && classifiedSubjects.size > 0">
<div *ngFor="let key of getKeys(classifiedSubjects)" style="line-height: 20px"> <div *ngFor="let key of getKeys(classifiedSubjects)" style="line-height: 20px">
<span uk-icon="tag"></span> <span uk-icon="tag"></span>
<span class="uk-text-bold uk-text-uppercase"> {{key}}: </span> <span class="uk-text-bold uk-text-uppercase"> {{key}}: </span>
@ -15,10 +16,10 @@ import {Component, Input} from '@angular/core';
<span class="uk-display-inline-block label-classified">{{subject}}</span> <span class="uk-display-inline-block label-classified">{{subject}}</span>
</ng-container> </ng-container>
</div> </div>
</div> </ng-container>
</div> <div *ngIf="(subjects && subjects.length > 0) || (otherSubjects && otherSubjects.size > 0)">
<div *ngIf="(subjects && subjects.length > 0) || (otherSubjects && otherSubjects.size > 0)" class="uk-text-small uk-margin-small-top" <span uk-icon="tag"></span>
[class.uk-margin-top]="classifiedSubjects && classifiedSubjects.size > 0"> <span class="uk-text-bold uk-text-uppercase"> free text keywords: </span>
<span *ngIf="subjects && subjects.length > 0">{{subjects.join(', ')}}</span> <span *ngIf="subjects && subjects.length > 0">{{subjects.join(', ')}}</span>
<span *ngIf="(subjects && subjects.length > 0) && (otherSubjects && otherSubjects.size > 0)">, </span> <span *ngIf="(subjects && subjects.length > 0) && (otherSubjects && otherSubjects.size > 0)">, </span>
<span *ngIf="otherSubjects && otherSubjects.size > 0"> <span *ngIf="otherSubjects && otherSubjects.size > 0">
@ -30,6 +31,8 @@ import {Component, Input} from '@angular/core';
</span> </span>
</span> </span>
</div> </div>
</div>
</div>
` `
}) })

View File

@ -168,6 +168,7 @@
<div class="main-tabs-div"> <div class="main-tabs-div">
<my-tabs *ngIf="fetchProjects && fetchProjects.searchUtils.totalResults > 0"> <my-tabs *ngIf="fetchProjects && fetchProjects.searchUtils.totalResults > 0">
<my-tab *ngIf="fetchProjects && fetchProjects.searchUtils.totalResults > 0" <my-tab *ngIf="fetchProjects && fetchProjects.searchUtils.totalResults > 0"
[tabNumber]="fetchProjects.searchUtils.totalResults"
[tabTitle]="'Funding / Projects'" [tabTitle]="'Funding / Projects'"
[tabId]="'projects'"> [tabId]="'projects'">
<div class="uk-grid uk-margin-remove"> <div class="uk-grid uk-margin-remove">

View File

@ -9,7 +9,6 @@ import {SearchResearchResultsService} from '../../services/searchResearchResults
import {SearchDataprovidersService} from '../../services/searchDataproviders.service'; import {SearchDataprovidersService} from '../../services/searchDataproviders.service';
import {SearchProjectsService} from '../../services/searchProjects.service'; import {SearchProjectsService} from '../../services/searchProjects.service';
import {ErrorCodes} from '../../utils/properties/errorCodes'; import {ErrorCodes} from '../../utils/properties/errorCodes';
import {ProjectsInModalComponent} from '../landing-utils/projects-in-modal.component';
import {RouterHelper} from '../../utils/routerHelper.class'; import {RouterHelper} from '../../utils/routerHelper.class';
import {ModalLoading} from '../../utils/modal/loading.component'; import {ModalLoading} from '../../utils/modal/loading.component';
@ -20,6 +19,8 @@ import {SEOService} from '../../sharedComponents/SEO/SEO.service';
import {HelperFunctions} from "../../utils/HelperFunctions.class"; import {HelperFunctions} from "../../utils/HelperFunctions.class";
import {HelperService} from "../../utils/helper/helper.service"; import {HelperService} from "../../utils/helper/helper.service";
import {Location} from "@angular/common"; import {Location} from "@angular/common";
import {FetchResearchResults} from "../../utils/fetchEntitiesClasses/fetchResearchResults.class";
import {FetchDataproviders} from "../../utils/fetchEntitiesClasses/fetchDataproviders.class";
interface Total { interface Total {
publications: number; publications: number;
@ -49,7 +50,6 @@ export class OrganizationComponent {
// CSV variables // CSV variables
public downloadURLAPI: string; public downloadURLAPI: string;
public csvProjectParamsHead: string; public csvProjectParamsHead: string;
public csvPublicationParamsHead: string;
public csvParamsTail: string; public csvParamsTail: string;
// Active tab variable for responsiveness // Active tab variable for responsiveness
@ -65,10 +65,16 @@ export class OrganizationComponent {
dataproviders: 0 dataproviders: 0
}; };
public fetchProjects: FetchProjects; public fetchProjects: FetchProjects;
public fetchPublications: FetchResearchResults;
public fetchDatasets: FetchResearchResults;
public fetchSoftware: FetchResearchResults;
public fetchOrps: FetchResearchResults;
public fetchDataproviders: FetchDataproviders
public searchNumber: number = 5;
@ViewChild('downloadReportModal') downloadReportModal; @ViewChild('downloadReportModal') downloadReportModal;
@ViewChild('downloadFunderReportModal') downloadFunderReportModal; @ViewChild('downloadFunderReportModal') downloadFunderReportModal;
// Variables for projects query (query results only if projects tab is clicked)
@ViewChild(ProjectsInModalComponent) projectsInModalComponent: ProjectsInModalComponent;
@ViewChild(ModalLoading) loading: ModalLoading; @ViewChild(ModalLoading) loading: ModalLoading;
// Alert box when CSV: Project Publications for a funder is requested // Alert box when CSV: Project Publications for a funder is requested
@ -534,14 +540,6 @@ export class OrganizationComponent {
this.alertModalDeletedByInference.open(); this.alertModalDeletedByInference.open();
} }
openProjectsModal() {
this.projectsInModalComponent.pageChange({value: 1});
this.projectsModal.cancelButton = false;
this.projectsModal.okButton = false;
this.projectsModal.alertTitle = "Projects of";
this.projectsModal.open();
}
public getTypeParam(type: string): string { public getTypeParam(type: string): string {
if(type == 'results') { if(type == 'results') {
type = 'publications&type=datasets&type=software&type=other'; type = 'publications&type=datasets&type=software&type=other';

View File

@ -126,7 +126,7 @@
<div *ngIf="hasPrimaryInfo" class="uk-width-expand uk-padding"> <div *ngIf="hasPrimaryInfo" class="uk-width-expand uk-padding">
<!-- Description --> <!-- Description -->
<div *ngIf="resultLandingInfo.description" class="uk-margin-medium-bottom"> <div *ngIf="resultLandingInfo.description" class="uk-margin-medium-bottom">
<div class="uk-text-justify uk-text-small uk-height-max-medium uk-overflow-auto"> <div class="uk-text-justify uk-height-max-medium uk-overflow-auto">
<div class="uk-text-muted">Abstract</div> <div class="uk-text-muted">Abstract</div>
<span>{{resultLandingInfo.description.substring(0, showNumDescription)}}</span> <span>{{resultLandingInfo.description.substring(0, showNumDescription)}}</span>
<span *ngIf="showNumDescription == thresholdDescription && <span *ngIf="showNumDescription == thresholdDescription &&
@ -163,7 +163,7 @@
<!-- Related Organizations--> <!-- Related Organizations-->
<div *ngIf="resultLandingInfo.organizations && resultLandingInfo.organizations.length > 0" <div *ngIf="resultLandingInfo.organizations && resultLandingInfo.organizations.length > 0"
class="uk-margin-medium-bottom uk-width-2-3@m"> class="uk-margin-medium-bottom uk-width-2-3@m">
<div class="uk-text-muted uk-text-small">Related Organizations</div> <div class="uk-text-muted">Related Organizations</div>
<ul class="uk-list organizations uk-margin-remove-top"> <ul class="uk-list organizations uk-margin-remove-top">
<li *ngFor="let organization of resultLandingInfo.organizations"> <li *ngFor="let organization of resultLandingInfo.organizations">
<div class="title" *ngIf="!organization.websiteUrl"> <div class="title" *ngIf="!organization.websiteUrl">
@ -204,7 +204,7 @@
<div class="sideInfoTitle uk-margin-small-bottom uk-flex"> <div class="sideInfoTitle uk-margin-small-bottom uk-flex">
<span class="uk-width-1-2">Download from</span> <span class="uk-width-1-2">Download from</span>
<span *ngIf="resultLandingInfo.deletedByInferenceIds" <span *ngIf="resultLandingInfo.deletedByInferenceIds"
class="uk-width-1-2 uk-text-small uk-text-right"> class="uk-width-1-2 uk-text-right">
<a (click)="openDeletedByInference()">View all {{resultLandingInfo.deletedByInferenceIds.length}} <a (click)="openDeletedByInference()">View all {{resultLandingInfo.deletedByInferenceIds.length}}
versions</a> versions</a>
</span> </span>
@ -466,13 +466,13 @@
<!-- Last Index Info--> <!-- Last Index Info-->
<div class="uk-flex uk-flex-bottom uk-width-2-3"> <div class="uk-flex uk-flex-bottom uk-width-2-3">
<img src="assets/common-assets/graph.svg" style="opacity: 0.4"> <img src="assets/common-assets/graph.svg" style="opacity: 0.4">
<span class="uk-margin-small-left uk-text-small uk-text-baseline uk-text-muted">Powered by OpenAIRE Open Research Graph</span> <span class="uk-margin-small-left uk-text-baseline uk-text-muted">Powered by OpenAIRE Open Research Graph</span>
<span class="uk-margin-small-left uk-text-small uk-text-baseline uk-text-muted"> <span class="uk-margin-small-left uk-text-baseline uk-text-muted">
Last update of records in OpenAIRE: {{indexUpdateDate | date: 'MMM dd, yyyy'}} Last update of records in OpenAIRE: {{indexUpdateDate | date: 'MMM dd, yyyy'}}
</span> </span>
</div> </div>
<!--Feedback--> <!--Feedback-->
<div class="uk-width-1-3 uk-text-right uk-text-small"> <div class="uk-width-1-3 uk-text-right">
<span class="uk-text-muted">Any information missing or wrong?</span> <span class="uk-text-muted">Any information missing or wrong?</span>
<a (click)="showFeedback = true; scroll()" class="portal-link space">Report an Issue</a> <a (click)="showFeedback = true; scroll()" class="portal-link space">Report an Issue</a>
</div> </div>

View File

@ -30,14 +30,13 @@ import {AlertModal} from "../modal/alert";
<div class="uk-text-muted uk-margin-small-bottom uk-margin-small-top">ORCID</div> <div class="uk-text-muted uk-margin-small-bottom uk-margin-small-top">ORCID</div>
<span><input #element class="uk-padding-small uk-disabled" name="code" <span><input #element class="uk-padding-small uk-disabled" name="code"
[value]="author.orcid"></span>{{" "}} [value]="author.orcid"></span>{{" "}}
<span> <span class="space">
<button <button
[class]="'uk-icon-clipboard uk-button uk-button-primary uk-button-small orcid_clipboard_btn_auhtor_'+i" [class]="'uk-icon-clipboard uk-button uk-button-primary uk-button-small orcid_clipboard_btn_auhtor_'+i"
(click)="copyToClipboard(element)" title="Copy to clipboard"> (click)="copyToClipboard(element)" title="Copy to clipboard">
Copy Copy
</button> </button>
{{" "}} <a class="uk-button uk-button-primary uk-button-small space" title="Visit author in Orcid"
<a class="uk-button uk-button-primary uk-button-small" title="Visit author in Orcid"
[href]="properties.orcidURL+author.orcid" target="_blank"> [href]="properties.orcidURL+author.orcid" target="_blank">
Visit Visit
</a> </a>

View File

@ -200,20 +200,6 @@ export class FetchProjects {
} }
}, },
err => { err => {
/*console.log(err);
//TODO check erros (service not available, bad request)
// if( ){
// this.searchUtils.status = ErrorCodes.ERROR;
// }
//var errorCodes:ErrorCodes = new ErrorCodes();
//this.searchUtils.status = errorCodes.ERROR;
if(err.status == '404') {
this.searchUtils.status = this.errorCodes.NOT_FOUND;
} else if(err.status == '500') {
this.searchUtils.status = this.errorCodes.ERROR;
} else {
this.searchUtils.status = this.errorCodes.NOT_AVAILABLE;
}*/
this.handleError("Error getting projects for organization with id: " + organizationId, err); this.handleError("Error getting projects for organization with id: " + organizationId, err);
this.searchUtils.status = this.errorMessages.getErrorCode(err.status); this.searchUtils.status = this.errorMessages.getErrorCode(err.status);
} }

View File

@ -3,10 +3,9 @@ import {ErrorCodes} from '../../utils/properties/errorCodes';
import {ErrorMessagesComponent} from '../../utils/errorMessages.component'; import {ErrorMessagesComponent} from '../../utils/errorMessages.component';
import {SearchFields} from '../../utils/properties/searchFields'; import {SearchFields} from '../../utils/properties/searchFields';
import {SearchCustomFilter, SearchUtilsClass} from '../../searchPages/searchUtils/searchUtils.class'; import {SearchCustomFilter, SearchUtilsClass} from '../../searchPages/searchUtils/searchUtils.class';
import {DOI} from '../../utils/string-utils.class'; import {DOI, StringUtils} from '../../utils/string-utils.class';
import {Subject} from 'rxjs'; import {Subject} from 'rxjs';
import {EnvProperties} from '../../utils/properties/env-properties'; import {EnvProperties} from '../../utils/properties/env-properties';
import {StringUtils} from '../../utils/string-utils.class';
export class FetchResearchResults { export class FetchResearchResults {
private errorCodes: ErrorCodes; private errorCodes: ErrorCodes;