summaryrefslogtreecommitdiffstats
path: root/src/angular/form-elements/validation/validatable.component.ts
diff options
context:
space:
mode:
authorIsrael Lavi <israel.lavi@intl.att.com>2018-05-21 17:42:00 +0300
committerIsrael Lavi <il0695@att.com>2018-05-21 17:52:01 +0300
commit1994c98063c27a41797dec01f2ca9fcbe33ceab0 (patch)
treef30beeaf15a8358f6da78fdd74bcbda74bd334f8 /src/angular/form-elements/validation/validatable.component.ts
parent4749f4631426fcbe29ed98cef8f24cab18b501d0 (diff)
init commit onap ui
Change-Id: I1dace78817dbba752c550c182dfea118b4a38646 Issue-ID: SDC-1350 Signed-off-by: Israel Lavi <il0695@att.com>
Diffstat (limited to 'src/angular/form-elements/validation/validatable.component.ts')
-rw-r--r--src/angular/form-elements/validation/validatable.component.ts25
1 files changed, 25 insertions, 0 deletions
diff --git a/src/angular/form-elements/validation/validatable.component.ts b/src/angular/form-elements/validation/validatable.component.ts
new file mode 100644
index 0000000..4817dea
--- /dev/null
+++ b/src/angular/form-elements/validation/validatable.component.ts
@@ -0,0 +1,25 @@
+import { Input, Component } from "@angular/core";
+import { ValidationComponent } from './validation.component';
+import { Subject } from 'rxjs/Subject';
+import { IValidatableComponent } from './validatable.interface';
+
+export abstract class ValidatableComponent implements IValidatableComponent {
+
+ // Each ValidatableComponent should handle the style in case of error, according to this boolean
+ public valid = true;
+
+ // Each ValidatableComponent will notify when the value is changed.
+ public notifier: Subject<string>;
+
+ constructor() {
+ this.notifier = new Subject();
+ }
+
+ public abstract getValue(): any;
+
+ // Each ValidatableComponent should call the valueChanged on value changed function.
+ protected valueChanged = (value: any): void => {
+ this.notifier.next(value);
+ }
+
+}