ng-ytl-zorro-antd
Version:
An enterprise-class UI components based on Ant Design and Angular
65 lines (54 loc) • 2.26 kB
text/typescript
import { Component, ContentChild, Input } from '@angular/core';
import { NgControl } from '@angular/forms';
import { toBoolean } from '../util/convert';
export class NzFormControlComponent {
private _hasFeedback = false;
private _validateStatus: string | NgControl;
ngControl: NgControl;
set nzHasFeedback(value: boolean) {
this._hasFeedback = toBoolean(value);
}
get nzHasFeedback(): boolean {
return this._hasFeedback;
}
set nzValidateStatus(value: string | NgControl) {
this._validateStatus = value;
}
get nzValidateStatus(): string | NgControl {
return this._validateStatus || this.ngControl;
}
get isWarning(): boolean {
return this.nzValidateStatus === 'warning' || this.nzValidateStatus && (this.nzValidateStatus as NgControl).dirty && (this.nzValidateStatus as NgControl).hasError && (this.nzValidateStatus as NgControl).hasError('warning');
}
get isValidate(): boolean {
return this.nzValidateStatus === 'validating' || this.nzValidateStatus === 'pending' || this.nzValidateStatus && (this.nzValidateStatus as NgControl).dirty && (this.nzValidateStatus as NgControl).pending;
}
get isError(): boolean {
return this.nzValidateStatus === 'error' || this.nzValidateStatus && (this.nzValidateStatus as NgControl).dirty && (this.nzValidateStatus as NgControl).errors && (this.nzValidateStatus as NgControl).hasError && !(this.nzValidateStatus as NgControl).hasError('warning');
}
get isSuccess(): boolean {
return this.nzValidateStatus === 'success' || this.nzValidateStatus && (this.nzValidateStatus as NgControl).dirty && (this.nzValidateStatus as NgControl).valid;
}
get hasFeedBack(): boolean {
return this.nzHasFeedback;
}
}