bia-framework
Version:
Bia Framework to work with angular 2
40 lines (33 loc) • 1.34 kB
text/typescript
import {Directive, Host, Attribute, OnInit,Optional} from "@angular/core";
import {CoreFormInput} from "../core-form-input/core-form-input.component";
import {AbstractControl} from "@angular/forms";
import {CoreFormDropDown} from "../core-form-dropdown/core-form-dropdown";
import {CoreFormControlBase} from "../CoreFormControlBase";
(
{
selector: 'validation-only-number'
}
)
export class CoreFormValidationOnlyNumber implements OnInit
{
private host:CoreFormControlBase;
ngOnInit():any
{
if (this.host != null)
this.host.addFormValidator(
{ValidationName: 'validation-only-number', ValidationMessage: this.validationOnlyNumberMessage}, CoreFormValidationOnlyNumber.OnlyNumberValidator);
return undefined;
}
constructor(() () private inputHost:CoreFormInput ,
() () private dropDownHost:CoreFormDropDown,
("message") private validationOnlyNumberMessage:string )
{
this.host = inputHost || dropDownHost;
}
public static OnlyNumberValidator( c:AbstractControl ):{ [s:string]:boolean }
{
if (!/^[0-9]+$/.test(c.value))
return {"validation-only-number": true};
else return null;
}
}