Newer
Older
import { Component, OnInit, ViewChild } from '@angular/core';
import { AuditMetadata } from '../models/audit-metadata';
import { NewAuditOptionsComponent } from '../new-audit-options/new-audit-options.component';
import { DARSState } from '../store/state';
import { Store } from '@ngrx/store';
import { GlobalState } from '@app/core/state';
import * as selectors from '../store/selectors';
import { Observable } from 'rxjs';
import * as darsActions from '../store/actions';

Scott Berg
committed
import { Audit } from '../models/audit';
import { DarsApiService } from '../services/api.service';
@Component({
selector: 'cse-dars-view',
templateUrl: './dars-view.component.html',
styleUrls: ['./dars-view.component.scss'],
})
export class DARSViewComponent implements OnInit {
public metadataStatus$: Observable<DARSState['metadata']['status']>;
public visibleAuditStatus$: Observable<DARSState['visibleAudit']['status']>;

Scott Berg
committed
public audit$: Observable<Audit | null>;

Scott Berg
committed
constructor(
private store: Store<GlobalState>,
public dialog: MatDialog,
private api: DarsApiService,
) {}
public ngOnInit() {
this.store.dispatch(new darsActions.StartLoadingMetadata());
this.metadataStatus$ = this.store.select(selectors.metadataStatus);
this.visibleAuditStatus$ = this.store.select(selectors.visibleAuditStatus);

Scott Berg
committed
// this.audit$ = this.store.select(selectors.visibleAudit);
this.audit$ = this.api.getAudit(3);
public openNewAuditOptionsDialog() {
this.dialog.open(NewAuditOptionsComponent, {});
}
public openAudit(metadata: AuditMetadata) {

Scott Berg
committed
this.store.dispatch(new darsActions.StartLoadingAudit(metadata));
public closeAudit() {
this.store.dispatch(new darsActions.CloseAudit());