import { Component, } from '@angular/core'; import { Observable } from 'rxjs'; import { Store } from '@ngrx/store'; import { SearchQueryParams } from '../store/model'; import * as searchReducer from '../store/search.reducer'; import * as searchSelector from '../store/search.selector'; import * as searchMultipleActions from '../../search-multiple/store/search-multiple.action'; import * as coneSearchActions from '../../shared/cone-search/store/cone-search.action'; @Component({ selector: 'app-search', templateUrl: 'search.component.html' }) export class SearchComponent { public currentStep: Observable<string>; public datasetName: Observable<string>; public criteriaStepChecked: Observable<boolean>; public outputStepChecked: Observable<boolean>; public resultStepChecked: Observable<boolean>; public queryParams: Observable<SearchQueryParams>; public outputListEmpty: Observable<boolean>; constructor(private store: Store<searchReducer.State>) { this.currentStep = store.select(searchSelector.getCurrentStep); this.datasetName = store.select(searchSelector.getDatasetName); this.criteriaStepChecked = store.select(searchSelector.getCriteriaStepChecked); this.outputStepChecked = store.select(searchSelector.getOutputStepChecked); this.resultStepChecked = store.select(searchSelector.getResultStepChecked); this.queryParams = this.store.select(searchSelector.getQueryParams); this.outputListEmpty = this.store.select(searchSelector.getOutputListEmpty); this.store.dispatch(new searchMultipleActions.ResetSearchAction()); this.store.dispatch(new coneSearchActions.DeleteConeSearchAction()); } }