redoc/lib/components/Warnings/warnings.ts

38 lines
996 B
TypeScript
Raw Normal View History

'use strict';
2016-08-28 21:46:10 +03:00
import { Component, ChangeDetectionStrategy, OnInit } from '@angular/core';
2016-08-22 12:12:13 +03:00
import { SpecManager, BaseComponent } from '../base';
import { WarningsService, OptionsService } from '../../services/index';
2016-08-22 12:12:13 +03:00
@Component({
selector: 'warnings',
styleUrls: ['./warnings.css'],
templateUrl: './warnings.html',
2016-08-22 12:12:13 +03:00
changeDetection: ChangeDetectionStrategy.OnPush
})
2016-08-28 21:46:10 +03:00
export class Warnings extends BaseComponent implements OnInit {
2016-07-28 15:57:37 +03:00
warnings: Array<string> = [];
shown: boolean = false;
suppressWarnings: boolean;
constructor(specMgr:SpecManager, optionsMgr: OptionsService) {
super(specMgr);
2016-07-28 15:57:37 +03:00
this.suppressWarnings = optionsMgr.options.suppressWarnings;
}
init() {
2016-07-28 15:57:37 +03:00
this.shown = !this.suppressWarnings && !!this.warnings.length;
WarningsService.warnings.subscribe((warns) => {
this.warnings = warns;
2016-07-28 15:57:37 +03:00
this.shown = !this.suppressWarnings && !!warns.length;
});
}
close() {
this.shown = false;
}
2016-08-28 21:46:10 +03:00
ngOnInit() {
this.preinit();
}
}