import { Component, Input, ChangeDetectionStrategy } from '@angular/core'; import { Criterion } from '../store/model'; @Component({ selector: 'app-url-display', templateUrl: 'url-display.component.html', styleUrls: ['url-display.component.css'], changeDetection: ChangeDetectionStrategy.OnPush }) export class UrlDisplayComponent { @Input() apiPath: string; @Input() datasetName: string; @Input() criteriaList: Criterion[]; @Input() outputList: number[]; isLoading(): boolean { if (this.outputList.length > 0) { return false; } return true; } getUrl() { let query = this.apiPath + '/data/' + this.datasetName + '?a=' + this.outputList.join(';'); if (this.criteriaList.length > 0) { query += '&c=' + this.criteriaList.map(criterion => criterion.getCriterionStr()).join(';'); } return query; } }