From 6f900cc45d7dd7f97430812b86b5c1d1693c8ae3 Mon Sep 17 00:00:00 2001 From: Ittay Stern Date: Wed, 29 Aug 2018 17:01:32 +0300 Subject: merge from ecomp a88f0072 - Modern UI Issue-ID: VID-378 Change-Id: Ibcb23dd27f550cf32ce2fe0239f0f496ae014ff6 Signed-off-by: Ittay Stern --- .../formControlModels/dropdownFormControl.model.ts | 29 ++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 vid-webpack-master/src/app/shared/models/formControlModels/dropdownFormControl.model.ts (limited to 'vid-webpack-master/src/app/shared/models/formControlModels/dropdownFormControl.model.ts') diff --git a/vid-webpack-master/src/app/shared/models/formControlModels/dropdownFormControl.model.ts b/vid-webpack-master/src/app/shared/models/formControlModels/dropdownFormControl.model.ts new file mode 100644 index 000000000..ba3e860e0 --- /dev/null +++ b/vid-webpack-master/src/app/shared/models/formControlModels/dropdownFormControl.model.ts @@ -0,0 +1,29 @@ +import {FormControlModel} from "./formControl.model"; +import {FormGroup} from "@angular/forms"; +import {FormControlType} from "./formControlTypes.enum"; +import {Observable} from "rxjs"; + +export class DropdownFormControl extends FormControlModel{ + options$ : Observable = null; + args : string[]; + onInit: (data : DropdownFormControl, form: FormGroup) => Observable; + selectedField : string; + onInitSelectedField : string[]; // key that should select from API response. + ngValue : string; + name : string; + hasEmptyOptions : boolean; // get empty result from API or REDUX. + + + constructor(data) { + super(data); + this.type = FormControlType.DROPDOWN; + this.options$ = data.options ? data.options$ : null; + this.onInit = data.onInit; + this.selectedField = data.selectedField; + this.onInitSelectedField = data.onInitSelectedField ? data.onInitSelectedField : null; + this.ngValue = data.selectedField ? data.selectedField : 'id'; + this.name = data.name; + this.hasEmptyOptions = false; + } + +} -- cgit 1.2.3-korg