@bnsights/bbsf-controls 1.0.25 → 1.0.28
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -18
- package/bnsights-bbsf-controls-1.0.28.tgz +0 -0
- package/bnsights-bbsf-controls.metadata.json +1 -1
- package/bundles/bnsights-bbsf-controls.umd.js +1152 -222
- package/bundles/bnsights-bbsf-controls.umd.js.map +1 -1
- package/esm2015/lib/Shared/Directives/template-name.directive.js +18 -0
- package/esm2015/lib/Shared/Enums/Enums.js +45 -0
- package/esm2015/lib/Shared/Models/RepeaterField.js +3 -0
- package/esm2015/lib/Shared/Models/RepeaterOptions.js +10 -0
- package/esm2015/lib/Shared/services/render-component-service.service.js +19 -0
- package/esm2015/lib/Shared/services/validationErrorMassage.service.js +12 -12
- package/esm2015/lib/controls/ConfirmationModal/ConfirmationModal.component.js +2 -2
- package/esm2015/lib/controls/DateTimePicker/DateTimePicker.component.js +8 -3
- package/esm2015/lib/controls/DropdownList/DropdownList.component.js +2 -2
- package/esm2015/lib/controls/ImageUpload/ImageUpload.component.js +8 -5
- package/esm2015/lib/controls/MultiLingualTextArea/MultiLingualTextArea.component.js +3 -3
- package/esm2015/lib/controls/MultiLingualTextBox/MultiLingualTextBox.component.js +3 -3
- package/esm2015/lib/controls/Paging/Paging.component.js +2 -2
- package/esm2015/lib/controls/Repeater/repeater/repeater.component.js +112 -0
- package/esm2015/lib/controls/Repeater/repeater-field-builder/repeater-field-builder.component.js +704 -0
- package/esm2015/lib/controls/Repeater/repeater-item-field/repeater-item-field.component.js +20 -0
- package/esm2015/lib/controls/TextArea/TextArea.component.js +2 -2
- package/esm2015/lib/controls/TextBox/TextBox.component.js +2 -2
- package/esm2015/lib/controls/bbsf-controls.module.js +17 -9
- package/esm2015/public-api.js +9 -1
- package/fesm2015/bnsights-bbsf-controls.js +1114 -208
- package/fesm2015/bnsights-bbsf-controls.js.map +1 -1
- package/lib/Shared/Directives/template-name.directive.d.ts +6 -0
- package/lib/Shared/Enums/Enums.d.ts +40 -0
- package/lib/Shared/Models/RepeaterField.d.ts +5 -0
- package/lib/Shared/Models/RepeaterOptions.d.ts +13 -0
- package/lib/Shared/services/render-component-service.service.d.ts +7 -0
- package/lib/controls/DateTimePicker/DateTimePicker.component.d.ts +3 -1
- package/lib/controls/ImageUpload/ImageUpload.component.d.ts +1 -1
- package/lib/controls/Repeater/repeater/repeater.component.d.ts +25 -0
- package/lib/controls/Repeater/repeater-field-builder/repeater-field-builder.component.d.ts +17 -0
- package/lib/controls/Repeater/repeater-item-field/repeater-item-field.component.d.ts +8 -0
- package/package.json +2 -2
- package/public-api.d.ts +8 -0
- package/src/lib/assets/Style.css +0 -9
- package/bnsights-bbsf-controls-1.0.25.tgz +0 -0
|
@@ -4,7 +4,7 @@ import timeGridPlugin from '@fullcalendar/timegrid';
|
|
|
4
4
|
import listPlugin from '@fullcalendar/list';
|
|
5
5
|
import interactionPlugin from '@fullcalendar/interaction';
|
|
6
6
|
import * as i0 from '@angular/core';
|
|
7
|
-
import { Injectable, Optional, EventEmitter, Component, Input, Output, ViewChild, NgZone, NgModule, NO_ERRORS_SCHEMA, Injector } from '@angular/core';
|
|
7
|
+
import { Injectable, Optional, EventEmitter, Component, Input, Output, ViewChild, NgZone, Directive, TemplateRef, ViewChildren, ComponentFactoryResolver, ViewContainerRef, NgModule, NO_ERRORS_SCHEMA, Injector } from '@angular/core';
|
|
8
8
|
import { BlockUIModule } from 'ng-block-ui';
|
|
9
9
|
import { ControlContainer, Validators, FormControl, FormGroupDirective, FormGroup, ReactiveFormsModule, FormsModule } from '@angular/forms';
|
|
10
10
|
import { Http, HttpModule } from '@angular/http';
|
|
@@ -18,10 +18,10 @@ import { SearchCountryField, NgxIntlTelInputModule } from 'ngx-intl-tel-input';
|
|
|
18
18
|
import { UtilityService, ControlValidationService, BBSFTranslateService, RequestOptionsModel, RequestHandlerService, BBSFUtilitiesModule } from '@bnsights/bbsf-utilities';
|
|
19
19
|
import { BsDatepickerModule } from 'ngx-bootstrap/datepicker';
|
|
20
20
|
import { Subject, Observable, noop, of } from 'rxjs';
|
|
21
|
+
import { DateTimeAdapter, OwlDateTimeModule, OwlNativeDateTimeModule, OWL_DATE_TIME_LOCALE } from 'ng-pick-datetime';
|
|
21
22
|
import { FileUploader, FileLikeObject, FileUploadModule } from 'ng2-file-upload';
|
|
22
23
|
import { __decorate, __awaiter } from 'tslib';
|
|
23
24
|
import { Expose, plainToClass } from 'class-transformer';
|
|
24
|
-
import { OwlDateTimeModule, OwlNativeDateTimeModule, OWL_DATE_TIME_LOCALE } from 'ng-pick-datetime';
|
|
25
25
|
import { NgMultiSelectDropDownModule } from 'ng-multiselect-dropdown';
|
|
26
26
|
import { AngularMultiSelectModule } from 'angular2-multiselect-dropdown';
|
|
27
27
|
import { NgxSummernoteModule } from 'ngx-summernote';
|
|
@@ -96,22 +96,22 @@ class ErrorMassageValidation {
|
|
|
96
96
|
result = this.utilityService.getResourceValue("NumberValidationKey");
|
|
97
97
|
break;
|
|
98
98
|
case "maxlength":
|
|
99
|
-
result = this.utilityService.getResourceValue("MaxLenghtValidationKey") + error.value.requiredLength;
|
|
99
|
+
result = this.utilityService.getResourceValue("MaxLenghtValidationKey") + " " + error.value.requiredLength;
|
|
100
100
|
break;
|
|
101
101
|
case "minlength":
|
|
102
|
-
result = this.utilityService.getResourceValue("MinLenghtValidationKey") + error.value.requiredLength;
|
|
102
|
+
result = this.utilityService.getResourceValue("MinLenghtValidationKey") + " " + error.value.requiredLength;
|
|
103
103
|
break;
|
|
104
104
|
case "min":
|
|
105
|
-
result = this.utilityService.getResourceValue("MinValueValidationKey") + error.value.min;
|
|
105
|
+
result = this.utilityService.getResourceValue("MinValueValidationKey") + " " + error.value.min;
|
|
106
106
|
break;
|
|
107
107
|
case "max":
|
|
108
|
-
result = this.utilityService.getResourceValue("MaxValueValidationKey") + error.value.max;
|
|
108
|
+
result = this.utilityService.getResourceValue("MaxValueValidationKey") + " " + error.value.max;
|
|
109
109
|
break;
|
|
110
110
|
case "validatePhoneNumber":
|
|
111
111
|
result = this.utilityService.getResourceValue("PhoneNumberValidationKey");
|
|
112
112
|
break;
|
|
113
113
|
case "mask":
|
|
114
|
-
result = this.utilityService.getResourceValue("MaskValidationKey") + error.value.requiredMask;
|
|
114
|
+
result = this.utilityService.getResourceValue("MaskValidationKey") + " " + error.value.requiredMask;
|
|
115
115
|
break;
|
|
116
116
|
case "PasswordComplexityHasNumber":
|
|
117
117
|
result = this.utilityService.getResourceValue("PasswordComplexityHasNumber");
|
|
@@ -132,25 +132,25 @@ class ErrorMassageValidation {
|
|
|
132
132
|
result = this.utilityService.getResourceValue("PasswordComplexityHasSpecialLetter");
|
|
133
133
|
break;
|
|
134
134
|
case "MaxWordCountValidationKey":
|
|
135
|
-
result = this.utilityService.getResourceValue("MaxWordCountValidationKey") + error.value;
|
|
135
|
+
result = this.utilityService.getResourceValue("MaxWordCountValidationKey") + " " + error.value;
|
|
136
136
|
break;
|
|
137
137
|
case "NewSelectionValidationKey":
|
|
138
138
|
result = this.utilityService.getResourceValue("NewSelectionValidationKey");
|
|
139
139
|
break;
|
|
140
140
|
case "MaxFileCountValidationKey":
|
|
141
|
-
result = this.utilityService.getResourceValue("MaxFileCountValidationKey") + error.value;
|
|
141
|
+
result = this.utilityService.getResourceValue("MaxFileCountValidationKey") + " " + error.value;
|
|
142
142
|
break;
|
|
143
143
|
case "MinFileCountValidationKey":
|
|
144
|
-
result = this.utilityService.getResourceValue("MinFileCountValidationKey") + error.value;
|
|
144
|
+
result = this.utilityService.getResourceValue("MinFileCountValidationKey") + " " + error.value;
|
|
145
145
|
break;
|
|
146
146
|
case "MaxSizeForAllFilesInMB":
|
|
147
|
-
result = this.utilityService.getResourceValue("MaxSizeForAllFilesInMB") + error.value;
|
|
147
|
+
result = this.utilityService.getResourceValue("MaxSizeForAllFilesInMB") + " " + error.value;
|
|
148
148
|
break;
|
|
149
149
|
case "FileMaxSizeInMB":
|
|
150
|
-
result = this.utilityService.getResourceValue("FileMaxSizeInMB") + error.value;
|
|
150
|
+
result = this.utilityService.getResourceValue("FileMaxSizeInMB") + " " + error.value;
|
|
151
151
|
break;
|
|
152
152
|
case "ToolTipTypeError":
|
|
153
|
-
result = this.utilityService.getResourceValue("ToolTipTypeError") + error.value;
|
|
153
|
+
result = this.utilityService.getResourceValue("ToolTipTypeError") + " " + error.value;
|
|
154
154
|
break;
|
|
155
155
|
default:
|
|
156
156
|
break;
|
|
@@ -341,7 +341,7 @@ OnPagingFiltersChangeService.decorators = [
|
|
|
341
341
|
|
|
342
342
|
class DateInputComponent {
|
|
343
343
|
// tslint:disable-next-line: max-line-length
|
|
344
|
-
constructor(datepipe, onChangeService, ErrorHandler, controlUtility, controlContainer, DateInputControlHost, UtilityService, translate, controlValidationService) {
|
|
344
|
+
constructor(datepipe, onChangeService, ErrorHandler, controlUtility, controlContainer, DateInputControlHost, UtilityService, translate, controlValidationService, dateTimeAdapter) {
|
|
345
345
|
this.datepipe = datepipe;
|
|
346
346
|
this.onChangeService = onChangeService;
|
|
347
347
|
this.ErrorHandler = ErrorHandler;
|
|
@@ -351,6 +351,7 @@ class DateInputComponent {
|
|
|
351
351
|
this.UtilityService = UtilityService;
|
|
352
352
|
this.translate = translate;
|
|
353
353
|
this.controlValidationService = controlValidationService;
|
|
354
|
+
this.dateTimeAdapter = dateTimeAdapter;
|
|
354
355
|
this.OnChange = new EventEmitter();
|
|
355
356
|
this.markAllAsTouched = false;
|
|
356
357
|
this.validationRules = [];
|
|
@@ -381,6 +382,8 @@ class DateInputComponent {
|
|
|
381
382
|
DateInputComponent.controlContainerstatic = this.controlContainer;
|
|
382
383
|
}
|
|
383
384
|
ngOnInit() {
|
|
385
|
+
// Update the DateTimeAdapter Language with the current thread langauge
|
|
386
|
+
this.dateTimeAdapter.setLocale(this.UtilityService.getCurrentLanguage() == "ar" ? "ar" : "en-UK");
|
|
384
387
|
this.controlValidationService.isCreatedBefor = false;
|
|
385
388
|
this.group.addControl(this.options.Name, new FormControl(''));
|
|
386
389
|
this.DatePickerFormControl = this.group.controls[this.options.Name]; // new FormControl('',validationRules);
|
|
@@ -473,7 +476,8 @@ DateInputComponent.ctorParameters = () => [
|
|
|
473
476
|
{ type: FormGroupDirective },
|
|
474
477
|
{ type: UtilityService },
|
|
475
478
|
{ type: BBSFTranslateService },
|
|
476
|
-
{ type: ControlValidationService }
|
|
479
|
+
{ type: ControlValidationService },
|
|
480
|
+
{ type: DateTimeAdapter }
|
|
477
481
|
];
|
|
478
482
|
DateInputComponent.propDecorators = {
|
|
479
483
|
group: [{ type: Input }],
|
|
@@ -958,7 +962,7 @@ class MultiLingualTextBoxComponent {
|
|
|
958
962
|
}
|
|
959
963
|
this.showInputUsingLanguageMode();
|
|
960
964
|
this.ArabicValidationRules.push(Validators.compose([
|
|
961
|
-
this.controlUtility.patternValidator(
|
|
965
|
+
this.controlUtility.patternValidator(/^[^A-Za-z]*$/, { ArabicLetterOnly: this.ArabicLetterOnly }),
|
|
962
966
|
]));
|
|
963
967
|
this.EnglishValidationRules.push(Validators.compose([
|
|
964
968
|
this.controlUtility.patternValidator(/^[\x00-\x7F]*$/, { EnglishLetterOnly: this.EnglishLetterOnly }),
|
|
@@ -1154,7 +1158,7 @@ MultiLingualTextBoxComponent.controlContainerstatic = null;
|
|
|
1154
1158
|
MultiLingualTextBoxComponent.decorators = [
|
|
1155
1159
|
{ type: Component, args: [{
|
|
1156
1160
|
selector: 'BBSF-MultiLingualTextBox',
|
|
1157
|
-
template: "<div class=\"b-control b-multilangual-textbox\">\r\n
|
|
1161
|
+
template: "<div class=\"b-control b-multilangual-textbox\">\r\n <div class=\"form-group validate is-invalid\" [formGroup]=\"group\">\r\n\r\n <div class=\"form-group row\" [formGroup]=\"MultiLanguagegroup\">\r\n <div [ngClass]=\"(options.MultiControlPlacementType==1)?'col-md-12':'col-md-6'\">\r\n <div class=\"row\" *ngIf=\"ShowEnglishTextBox\">\r\n <label class=\"b-label col-form-label col-sm-12\"\r\n [ngClass]=\"(options.ViewType==1)?'col-md-9':'col-md-3'\" [hidden]=\"options.IsHideEnglishLabel\">\r\n {{(options.EnglishLabelValue!=null&&options.EnglishLabelValue!=\"\")?options.EnglishLabelValue:options.LabelValue}}\r\n <span *ngIf=\"(options.ShowAsterisk&&options.IsRequired)||(options.IsRequired)\"\r\n class=\"text-danger Required-text\" aria-required=\"true\">*</span>\r\n </label>\r\n\r\n <div class=\"col-sm-12\" [ngClass]=\"(options.ViewType==1)?'':'col-md-9'\">\r\n <div class=\"input-group align-items-center\">\r\n <div class=\"svg svg-icon-grey\" [ngClass]=\"(options.IconPositionEN==1)?'left-icon':'right-icon'\" *ngIf=\"options.Icon!=null\">\r\n <span [inlineSVG]=\"options.Icon\"></span>\r\n </div>\r\n <input class=\"form-control bnsights-control\"\r\n (focus)=\"showEnglishWordCount(true)\" (focusout)=\"showEnglishWordCount(false)\"\r\n aria-describedby=\"email-error\" aria-invalid=\"true\" formControlName=\"English\"\r\n [hidden]=\"options.IsHideEnglishFields\" maxlength=\"{{options.MaxLength}}\" minlength=\"{{options.MinLength}}\"\r\n [class.is-invalid]=\"EnglishFormControl.invalid && EnglishFormControl.touched\"\r\n placeholder=\"{{options.EnglishPlaceholder}}\" (change)=\"trimControlValue('En')\"\r\n (keyup)=\"onTextChange()\"\r\n (keydown)=\"EnglishWordCountArray>options.MaxWordCount&&$event.keyCode !=8?$event.preventDefault():null\"\r\n #userinputEnglish>\r\n <div class=\"input-group-append\" [hidden]=\"options.IsHideEnglishFields\" *ngIf=\"options.EnableCopyToClipboard\">\r\n <span class=\"input-group-text\" (click)=\"copyInputMessage(userinputEnglish)\">\r\n <i class=\"fas fa-copy\"></i>\r\n </span>\r\n </div>\r\n </div>\r\n <div class=\"text-muted font-weight-500 word-count float-end\" *ngIf=\"options.MaxWordCount>0&&IsShowEnglishWordCount\">{{EnglishWordCount}}/{{options.MaxWordCount}}</div>\r\n <div class=\"text-danger Required-text\" *ngIf=\"(EnglishFormControl.invalid && EnglishFormControl.touched)\">\r\n {{getErrorValidation(EnglishFormControl.errors|keyvalue)}}\r\n </div>\r\n\r\n <div class=\"control-desc\" *ngIf=\"(options.LabelDescription!=null&&options.LabelDescription!='') ||(options.EnglishLabelDescription!=null&&options.EnglishLabelDescription!='')\">\r\n {{(options.EnglishLabelDescription!=null&&options.EnglishLabelDescription!=\"\")?options.EnglishLabelDescription:options.LabelDescription}}\r\n </div>\r\n <!-- <div *ngIf=\"EnglishFormControl.valid\">{{resetError()}}</div> -->\r\n <div *ngIf=\"group.valid\">{{resetError()}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div [ngClass]=\"(options.MultiControlPlacementType==1)?'col-md-12':'col-md-6'\">\r\n <div class=\"row\" *ngIf=\"ShowArabicTextBox\">\r\n <label class=\"b-label col-form-label col-sm-12\"\r\n [ngClass]=\"(options.ViewType==1)?'col-md-12':'col-md-3'\" [hidden]=\"options.IsHideArabicLabel\">\r\n {{(options.ArabicLabelValue!=null&&options.ArabicLabelValue!=\"\")?options.ArabicLabelValue:options.LabelValue}}\r\n <span *ngIf=\"(options.ShowAsterisk&&options.IsRequired)||(options.IsRequired)\" class=\"text-danger Required-text\" aria-required=\"true\">*</span>\r\n </label>\r\n <div class=\" col-sm-12\" [ngClass]=\"(options.ViewType==1)?'':'col-md-9'\">\r\n <div class=\"input-group align-items-center\">\r\n <div class=\"svg svg-icon-grey\" [ngClass]=\"(options.IconPositionEN==1)?'right-icon':'left-icon'\" *ngIf=\"options.Icon!=null\">\r\n <span [inlineSVG]=\"options.Icon\"></span>\r\n </div>\r\n <input class=\"form-control bnsights-control\" dir=\"rtl\"\r\n (focus)=\"showArabicWordCount(true)\" (focusout)=\"showArabicWordCount(false)\"\r\n [hidden]=\"options.IsHideArabicFields\" aria-describedby=\"email-error\" aria-invalid=\"true\"\r\n formControlName=\"Arabic\" maxlength=\"{{options.MaxLength}}\" minlength=\"{{options.MinLength}}\"\r\n [class.is-invalid]=\"ArabicFormControl.invalid && ArabicFormControl.touched\"\r\n placeholder=\"{{options.ArabicPlaceholder}}\" (keyup)=\"onTextChange()\"\r\n (keydown)=\"ArabicWordCountArray>options.MaxWordCount&&$event.keyCode !=8?$event.preventDefault():null\"\r\n (change)=\"trimControlValue('Ar')\" #userinputArabic>\r\n\r\n <div class=\"input-group-append\" [hidden]=\"options.IsHideArabicFields\" *ngIf=\"options.EnableCopyToClipboard\">\r\n <span class=\"input-group-text\" (click)=\"copyInputMessage(userinputArabic)\">\r\n <i class=\"fas fa-copy\"></i>\r\n </span>\r\n </div>\r\n </div>\r\n <div class=\"text-muted font-weight-500 float-end word-count\" *ngIf=\"options.MaxWordCount>0&&IsShowArabicWordCount\">{{ArabicWordCount}}/{{options.MaxWordCount}}</div>\r\n <div class=\"text-danger Required-text\" *ngIf=\"(ArabicFormControl.invalid && ArabicFormControl.touched)\">\r\n {{getErrorValidation(ArabicFormControl.errors|keyvalue)}}\r\n </div>\r\n <div class=\"control-desc\" *ngIf=\"(options.LabelDescription!=null&&options.LabelDescription!='')||(options.ArabicLabelDescription!=null&&options.ArabicLabelDescription!='')\">\r\n {{(options.ArabicLabelDescription!=null&&options.ArabicLabelDescription!=\"\")?options.ArabicLabelDescription:options.LabelDescription}}\r\n </div>\r\n <!-- <div *ngIf=\"ArabicFormControl.valid\">{{resetError()}}</div> -->\r\n <div *ngIf=\"group.valid\">{{resetError()}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n</div>\r\n",
|
|
1158
1162
|
styles: [".example-form{min-width:150px;max-width:500px;width:100%}.example-full-width{width:100%}\n"]
|
|
1159
1163
|
},] }
|
|
1160
1164
|
];
|
|
@@ -1300,7 +1304,7 @@ TextAreaComponent.controlContainerstatic = null;
|
|
|
1300
1304
|
TextAreaComponent.decorators = [
|
|
1301
1305
|
{ type: Component, args: [{
|
|
1302
1306
|
selector: 'BBSF-TextArea',
|
|
1303
|
-
template: "<div class=\"b-control b-textarea\">\r\n <div class=\"form-group row validate is-invalid\" [formGroup]=\"group\">\r\n <label class=\"b-label col-form-label col-sm-12 \" [ngClass]=\"(options.ViewType==1)?'col-md-12':'col-md-3'\"\r\n *ngIf=\"!options.HideLabel\">\r\n {{options.LabelValue}}\r\n <span *ngIf=\"(options.ShowAsterisk&&options.IsRequired)||(options.IsRequired)\" class=\"text-danger Required-text\"\r\n aria-required=\"true\">*</span>\r\n </label>\r\n\r\n <div class=\"col-sm-12\" [ngClass]=\"(options.ViewType==1)?'': ((options.HideLabel)?'col-md-12':'col-md-9')\">\r\n <div class=\"input-group\">\r\n <textarea class=\"form-control bnsights-control {{options.ExtraClasses}}\"\r\n (focus)=\"showWordCount(true)\" (focusout)=\"showWordCount(false)\"\r\n dir=\"{{options.ForceDirection==2?'rtl':''}}\"
|
|
1307
|
+
template: "<div class=\"b-control b-textarea\">\r\n <div class=\"form-group row validate is-invalid\" [formGroup]=\"group\">\r\n <label class=\"b-label col-form-label col-sm-12 \" [ngClass]=\"(options.ViewType==1)?'col-md-12':'col-md-3'\"\r\n *ngIf=\"!options.HideLabel\">\r\n {{options.LabelValue}}\r\n <span *ngIf=\"(options.ShowAsterisk&&options.IsRequired)||(options.IsRequired)\" class=\"text-danger Required-text\"\r\n aria-required=\"true\">*</span>\r\n </label>\r\n\r\n <div class=\"col-sm-12\" [ngClass]=\"(options.ViewType==1)?'': ((options.HideLabel)?'col-md-12':'col-md-9')\">\r\n <div class=\"input-group\">\r\n <textarea class=\"form-control bnsights-control {{options.ExtraClasses}}\"\r\n (focus)=\"showWordCount(true)\" (focusout)=\"showWordCount(false)\"\r\n dir=\"{{options.ForceDirection==2?'rtl':''}}\" aria-describedby=\"email-error\"\r\n aria-invalid=\"true\" formControlName=\"{{options.Name}}\"\r\n [class.is-invalid]=\"TextAreaFormControl.invalid && TextAreaFormControl.touched\"\r\n placeholder=\"{{options.Placeholder}}\" id=\"{{options.Name}}\" autocomplete=\"{{options.AutoComplete}}\"\r\n (change)=\"trimControlValue()\" rows=\"{{options.Rows}}\" (keyup)=\"onTextChange()\" cols=\"{{options.Cols}}\"\r\n maxlength=\"{{options.MaxLength}}\" minlength=\"{{options.MinLength}}\"\r\n (keydown)=\"WordCountArray>options.MaxWordCount&&$event.keyCode !=8?$event.preventDefault():null\"\r\n #TextAreainput></textarea>\r\n <div class=\"input-group-append\" *ngIf=\"options.EnableCopyToClipboard\">\r\n <span class=\"input-group-text\" (click)=\"copyInputMessage(TextAreainput)\">\r\n <i class=\"fas fa-copy\"></i>\r\n </span>\r\n </div>\r\n <div class=\"text-muted font-weight-500 word-count float-end\" *ngIf=\"options.MaxWordCount>0&&IsShowWordCount\">{{WordCount}}/{{options.MaxWordCount}} words</div>\r\n </div>\r\n <div class=\"text-danger Required-text\"\r\n *ngIf=\"(TextAreaFormControl.invalid && TextAreaFormControl.touched)\">\r\n {{getErrorValidation(TextAreaFormControl.errors|keyvalue)}}\r\n </div>\r\n <div class=\"control-desc text-dark\" *ngIf=\"options.LabelDescription!=null\">{{options.LabelDescription}}</div>\r\n <!-- <div *ngIf=\"TextAreaFormControl.valid\">{{resetError()}}</div> -->\r\n <div *ngIf=\"(group.valid&&group.dirty&&group.touched )||(group.untouched&&group.invalid&&group.dirty) \">{{resetError()}}</div>\r\n\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
1304
1308
|
styles: [".example-form{min-width:150px;max-width:500px;width:100%}.example-full-width{width:100%}.flip_V{transform:scaleY(-1)}\n"]
|
|
1305
1309
|
},] }
|
|
1306
1310
|
];
|
|
@@ -1434,7 +1438,7 @@ class MultiLingualTextAreaComponent {
|
|
|
1434
1438
|
}
|
|
1435
1439
|
this.showInputUsingLanguageMode();
|
|
1436
1440
|
this.ArabicValidationRules.push(Validators.compose([
|
|
1437
|
-
this.controlUtility.patternValidator(
|
|
1441
|
+
this.controlUtility.patternValidator(/^[^A-Za-z]*$/, { ArabicLetterOnly: this.ArabicLetterOnly }),
|
|
1438
1442
|
]));
|
|
1439
1443
|
this.EnglishValidationRules.push(Validators.compose([
|
|
1440
1444
|
this.controlUtility.patternValidator(/^[\x00-\x7F]*$/, { EnglishLetterOnly: this.EnglishLetterOnly }),
|
|
@@ -1620,7 +1624,7 @@ MultiLingualTextAreaComponent.controlContainerstatic = null;
|
|
|
1620
1624
|
MultiLingualTextAreaComponent.decorators = [
|
|
1621
1625
|
{ type: Component, args: [{
|
|
1622
1626
|
selector: 'BBSF-MultiLingualTextArea',
|
|
1623
|
-
template: "<div class=\"b-control b-multilangual-textarea\">\r\n
|
|
1627
|
+
template: "<div class=\"b-control b-multilangual-textarea\">\r\n <div class=\"form-group validate is-invalid\" [formGroup]=\"group\">\r\n\r\n <div class=\"form-group row\" [formGroup]=\"MultiLanguageTextAreagroup\">\r\n <div [ngClass]=\"(options.MultiControlPlacementType==1)?'col-md-12':'col-md-6'\">\r\n <div class=\"row\" *ngIf=\"ShowEngishTextArea\">\r\n <label class=\"b-label col-form-label col-sm-12 \"\r\n [ngClass]=\"(options.ViewType==1)?'col-md-9':'col-md-3'\" [hidden]=\"options.IsHideEnglishLabel\">\r\n {{(options.EnglishLabelValue!=null&&options.EnglishLabelValue!=\"\")?options.EnglishLabelValue:options.LabelValue+\"in English\"}}\r\n <span *ngIf=\"(options.ShowAsterisk&&options.IsRequired)||(options.IsRequired)\"\r\n class=\"text-danger Required-text\" aria-required=\"true\">*</span>\r\n </label>\r\n\r\n <div class=\"col-sm-12\" [ngClass]=\"(options.ViewType==1)?'':'col-md-9'\">\r\n <div class=\"input-group\">\r\n <textarea class=\"form-control bnsights-control\" rows=\"{{options.Rows}}\" cols=\"{{options.Cols}}\"\r\n (focus)=\"showEnglishWordCount(true)\" (focusout)=\"showEnglishWordCount(false)\"\r\n maxlength=\"{{options.MaxLength}}\" minlength=\"{{options.MinLength}}\"\r\n aria-describedby=\"email-error\" aria-invalid=\"true\"\r\n formControlName=\"English\" [hidden]=\"options.IsHideEnglishFields\"\r\n [class.is-invalid]=\"EnglishTextAreaFormControl.invalid && EnglishTextAreaFormControl.touched\"\r\n placeholder=\"{{options.EnglishPlaceholder}}\" (change)=\"trimControlValue('En')\"\r\n \r\n (keyup)=\"onTextChange()\"\r\n (keydown)=\"EnglishWordCountArray>options.MaxWordCount&&$event.keyCode !=8?$event.preventDefault():null\"\r\n #userinputTextAreaEnglish>\r\n </textarea>\r\n <div class=\"input-group-append\" [hidden]=\"options.IsHideEnglishFields\" *ngIf=\"options.EnableCopyToClipboard\">\r\n <span class=\"input-group-text\" (click)=\"copyInputMessage(userinputTextAreaEnglish)\">\r\n <i class=\"fas fa-copy\"></i>\r\n </span>\r\n </div>\r\n\r\n\r\n </div>\r\n <div class=\"text-muted font-weight-500 float-end word-count\" *ngIf=\"options.MaxWordCount>0&&IsShowEnglishWordCount\">{{EnglishWordCount}}/{{options.MaxWordCount}}</div>\r\n <div class=\"text-danger Required-text\"\r\n *ngIf=\"(EnglishTextAreaFormControl.invalid && EnglishTextAreaFormControl.touched)\">\r\n {{getErrorValidation(EnglishTextAreaFormControl.errors|keyvalue)}}\r\n </div>\r\n <div class=\"control-desc\" *ngIf=\"(options.LabelDescription!=null&&options.LabelDescription!='') ||(options.EnglishLabelDescription!=null&&options.EnglishLabelDescription!='')\">\r\n {{(options.EnglishLabelDescription!=null&&options.EnglishLabelDescription!=\"\")?options.EnglishLabelDescription:options.LabelDescription}}\r\n </div>\r\n\r\n <!-- <div *ngIf=\"EnglishTextAreaFormControl.valid\">{{resetError()}}</div> -->\r\n <div *ngIf=\"(group.valid&&group.dirty&&group.touched )||(group.untouched&&group.invalid&&group.dirty) \">{{resetError()}}</div>\r\n\r\n\r\n </div>\r\n </div>\r\n </div>\r\n <div [ngClass]=\"(options.MultiControlPlacementType==1)?'col-md-12':'col-md-6'\">\r\n <div class=\"row\" *ngIf=\"ShowArabicTextArea\">\r\n\r\n <label class=\"b-label col-form-label col-sm-12 \"\r\n [ngClass]=\"(options.ViewType==1)?'col-md-12':'col-md-3'\" [hidden]=\"options.IsHideArabicLable\">\r\n {{(options.ArabicLabelValue!=null&&options.ArabicLabelValue!=\"\")?options.ArabicLabelValue:options.LabelValue+\"in Arabic\"}}\r\n <span *ngIf=\"(options.ShowAsterisk&&options.IsRequired)||(options.IsRequired)\"\r\n class=\"text-danger Required-text\" aria-required=\"true\">*</span>\r\n </label>\r\n <div class=\" col-sm-12\" [ngClass]=\"(options.ViewType==1)?'':'col-md-9'\">\r\n <div class=\"input-group\">\r\n <textarea class=\"form-control bnsights-control\" dir=\"rtl\" rows=\"{{options.Rows}}\" cols=\"{{options.Cols}}\"\r\n (focus)=\"showArabicWordCount(true)\" (focusout)=\"showArabicWordCount(false)\"\r\n [hidden]=\"options.IsHideArabicFields\"\r\n aria-describedby=\"email-error\" aria-invalid=\"true\"\r\n formControlName=\"Arabic\" rows=\"{{options.Rows}}\"\r\n maxlength=\"{{options.MaxLength}}\" minlength=\"{{options.MinLength}}\"\r\n [class.is-invalid]=\"ArabicTextAreaFormControl.invalid && ArabicTextAreaFormControl.touched\"\r\n placeholder=\"{{options.ArabicPlaceholder}}\" (change)=\"trimControlValue('Ar')\"\r\n (keyup)=\"onTextChange()\"\r\n (keydown)=\"ArabicWordCountArray>options.MaxWordCount&&$event.keyCode !=8?$event.preventDefault():null\"\r\n #userinputTextAreaArabic>\r\n </textarea>\r\n <div class=\"input-group-append\" [hidden]=\"options.IsHideArabicFields\" *ngIf=\"options.EnableCopyToClipboard\">\r\n <span class=\"input-group-text\" (click)=\"copyInputMessage(userinputTextAreaArabic)\">\r\n <i class=\"fas fa-copy\"></i>\r\n </span>\r\n </div>\r\n </div>\r\n <div class=\"text-muted font-weight-500 float-end word-count\" *ngIf=\"options.MaxWordCount>0&&IsShowArabicWordCount\">{{ArabicWordCount}}/{{options.MaxWordCount}}</div>\r\n <div class=\"text-danger Required-text\"\r\n *ngIf=\"(ArabicTextAreaFormControl.invalid && ArabicTextAreaFormControl.touched)\">\r\n {{getErrorValidation(ArabicTextAreaFormControl.errors|keyvalue)}}\r\n </div>\r\n <div class=\"control-desc\" *ngIf=\"(options.LabelDescription!=null&&options.LabelDescription!='')||(options.ArabicLabelDescription!=null&&options.ArabicLabelDescription!='')\">\r\n {{(options.ArabicLabelDescription!=null&&options.ArabicLabelDescription!=\"\")?options.ArabicLabelDescription:options.LabelDescription}}\r\n </div>\r\n <!-- <div *ngIf=\"ArabicTextAreaFormControl.valid\">{{resetError()}}</div> -->\r\n <div *ngIf=\"(group.valid&&group.dirty&&group.touched )||(group.untouched&&group.invalid&&group.dirty) \">{{resetError()}}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
1624
1628
|
styles: [".example-form{min-width:150px;max-width:500px;width:100%}.example-full-width{width:100%}\n"]
|
|
1625
1629
|
},] }
|
|
1626
1630
|
];
|
|
@@ -1894,7 +1898,7 @@ DropdownListComponent.decorators = [
|
|
|
1894
1898
|
{ type: Component, args: [{
|
|
1895
1899
|
// tslint:disable-next-line: component-selector
|
|
1896
1900
|
selector: 'BBSF-DropdownList',
|
|
1897
|
-
template: "<div class=\"b-control b-dropdown-list\">\r\n <div class=\"form-group row validate is-invalid\" [formGroup]=\"group\">\r\n <label class=\"b-label col-form-label col-sm-12 \" [ngClass]=\"(options.ViewType==1)?'col-md-12':'col-md-3'\"\r\n [hidden]=\"options.HideLabel\">\r\n {{options.LabelValue}}\r\n <span *ngIf=\"(options.ShowAsterisk&&options.IsRequired)||(options.IsRequired)\" class=\"text-danger Required-text\"\r\n aria-required=\"true\">*</span>\r\n </label>\r\n\r\n <div class=\"col-sm-12\" [ngClass]=\"(options.ViewType==1)?'':'col-md-9'\">\r\n <ng-select *ngIf=\"options.DisableBootstrapSelect==false\" dir=\"{{options.ForceDirection==2?'rtl':''}}\"\r\n [bindValue]=\"options.ItemTempletkey\" [bindLabel]=\"options.ItemTempletvalue\" [items]=\"options.DataSource\"\r\n [notFoundText]=\"'No data found.'\" [maxSelectedItems]=\"options.LimitSelection\"\r\n [searchable]=\"options.AllowSearchFilter\" [multiple]=\"!options.SingleSelection\" [readonly]=\"options.IsDisabled\"\r\n [
|
|
1901
|
+
template: "<div class=\"b-control b-dropdown-list\">\r\n <div class=\"form-group row validate is-invalid\" [formGroup]=\"group\">\r\n <label class=\"b-label col-form-label col-sm-12 \" [ngClass]=\"(options.ViewType==1)?'col-md-12':'col-md-3'\"\r\n [hidden]=\"options.HideLabel\">\r\n {{options.LabelValue}}\r\n <span *ngIf=\"(options.ShowAsterisk&&options.IsRequired)||(options.IsRequired)\" class=\"text-danger Required-text\"\r\n aria-required=\"true\">*</span>\r\n </label>\r\n\r\n <div class=\"col-sm-12\" [ngClass]=\"(options.ViewType==1)?'':'col-md-9'\">\r\n <ng-select *ngIf=\"options.DisableBootstrapSelect==false\" dir=\"{{options.ForceDirection==2?'rtl':''}}\"\r\n [bindValue]=\"options.ItemTempletkey\" [bindLabel]=\"options.ItemTempletvalue\" [items]=\"options.DataSource\"\r\n [notFoundText]=\"'No data found.'\" [maxSelectedItems]=\"options.LimitSelection\"\r\n [searchable]=\"options.AllowSearchFilter\" [multiple]=\"!options.SingleSelection\" [readonly]=\"options.IsDisabled\"\r\n [clearable]=\"true\" placeholder=\"{{options.Placeholder}}\" id=\"{{options.Name}}\"\r\n [selectableGroup]=\"true\" [selectableGroupAsModel]=\"false\" formControlName=\"{{options.Name}}\"\r\n [(ngModel)]=\"options.SelectedItems\" (change)=\"onItemSelect($event[options.ItemTempletkey])\" (clear)=\"Clear()\"\r\n [class.is-invalid]=\"DropdownListFormControl.invalid && DropdownListFormControl.touched\"\r\n [closeOnSelect]=\"options.SingleSelection ? true : false\">\r\n\r\n <ng-template *ngIf=\"options.ShowCheckbox\" ng-option-tmp let-item=\"item\" let-item$=\"item$\" let-index=\"index\">\r\n <div class=\"ks-cboxtags\">\r\n <input id=\"item-{{index}}\" type=\"checkbox\" [ngModelOptions]=\"{standalone: true}\" [ngModel]=\"item$.selected\"\r\n class=\" \" /> <label class=\"ng-option-label mb-0\" id={{item.key}}>{{item.value}}</label>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template *ngIf=\"!options.ShowCheckbox\" ng-option-tmp let-item=\"item\" let-item$=\"item$\" let-index=\"index\">\r\n <label class=\"ng-option-label mb-0\" id={{item.key}}>{{item.value}}</label>\r\n </ng-template>\r\n\r\n </ng-select>\r\n\r\n <select *ngIf=\"options.DisableBootstrapSelect\" class=\"form-control bnsights-control\"\r\n dir=\"{{options.ForceDirection==2?'rtl':''}}\" (change)=\"onItemSelect($event.target.value)\"\r\n [disabled]=\"options.IsDisabled\" formControlName=\"{{options.Name}}\">\r\n <option value=\"\" disabled>--select--</option>\r\n <option *ngFor=\"let item of options.DataSource\" value=\"{{item.key}}\" [ngValue]=\"item.key\">\r\n {{item.value}}\r\n </option>\r\n </select>\r\n\r\n <div class=\"text-danger Required-text\"\r\n *ngIf=\"(DropdownListFormControl.invalid && DropdownListFormControl.touched)\">\r\n {{getErrorValidation(DropdownListFormControl.errors|keyvalue)}}\r\n </div>\r\n\r\n <div class=\"d-flex justify-content-between align-items-center\">\r\n <div class=\"control-desc\">{{options.LabelDescription}}</div>\r\n </div>\r\n\r\n <!-- <div *ngIf=\"DropdownListFormControl.valid\">{{resetError()}}</div> -->\r\n <div *ngIf=\"(group.valid&&group.dirty&&group.touched )||(group.untouched&&group.invalid&&group.dirty) \">\r\n {{resetError()}}</div>\r\n\r\n\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
1898
1902
|
styles: [".cuppa-dropdown{background-color:#fff}.arrow-up,.arrow-down{border-left:none!important;border-right:none!important}.dropdown-list{padding-top:0!important}.c-token{background-color:#6495ed}.pure-checkbox .selected-item{background-color:#6495ed;color:#fff}\n"]
|
|
1899
1903
|
},] }
|
|
1900
1904
|
];
|
|
@@ -2783,7 +2787,7 @@ class ImageUploaderComponent {
|
|
|
2783
2787
|
this.FileLikeObject = new FileLikeObject({
|
|
2784
2788
|
name: element.FileName,
|
|
2785
2789
|
size: element.FileSizeInMB * 1000 * 1000,
|
|
2786
|
-
type: element.FileType
|
|
2790
|
+
type: element.FileType,
|
|
2787
2791
|
});
|
|
2788
2792
|
this.uploader.addToQueue([this.FileLikeObject]);
|
|
2789
2793
|
}
|
|
@@ -2798,15 +2802,17 @@ class ImageUploaderComponent {
|
|
|
2798
2802
|
const TypeToolTipe = element.split('/')[1];
|
|
2799
2803
|
this.ToolTipTypeArray.push(TypeToolTipe);
|
|
2800
2804
|
}
|
|
2801
|
-
this.ValidationMessage = this.ValidationMessage +
|
|
2805
|
+
this.ValidationMessage = this.ValidationMessage + this.UtilityService.getResourceValue("AllowedTypes") + ` (${this.ToolTipTypeArray}) `;
|
|
2802
2806
|
}
|
|
2803
2807
|
if (this.options.FileMaxSizeInMB > 0) {
|
|
2804
|
-
this.ValidationMessage = this.ValidationMessage + ` <br />
|
|
2808
|
+
this.ValidationMessage = this.ValidationMessage + ` <br /> ${this.UtilityService.getResourceValue("FileMaxSizeInMB")} ${this.options.FileMaxSizeInMB}`;
|
|
2805
2809
|
}
|
|
2806
2810
|
if (this.options.FileUploadAcceptsTypes != null && this.options.FileUploadAcceptsTypes.length > 0) {
|
|
2807
2811
|
}
|
|
2808
2812
|
this.group.addControl(this.options.Name, new FormControl(''));
|
|
2809
2813
|
this.ImageUploadFormControl = this.group.controls[this.options.Name]; // new FormControl('',validationRules);
|
|
2814
|
+
if (this.options.Value != null)
|
|
2815
|
+
this.group.get(this.options.Name).setValue(this.options.Value);
|
|
2810
2816
|
if (this.options.LabelKey != null && this.options.LabelKey != "")
|
|
2811
2817
|
this.options.LabelValue = this.UtilityService.getResourceValue(this.options.LabelKey);
|
|
2812
2818
|
if (this.options.CustomValidation.length > 0) {
|
|
@@ -2949,6 +2955,7 @@ class ImageUploaderComponent {
|
|
|
2949
2955
|
FileType: this.EventFile.type,
|
|
2950
2956
|
FileBase64: reader.result.toString().split(',')[1],
|
|
2951
2957
|
FileSizeInMB: ((BlobFile.size / 1000) / 1000),
|
|
2958
|
+
NameWithExtension: this.EventFile.name
|
|
2952
2959
|
};
|
|
2953
2960
|
BlobFile.name = this.EventFile.name;
|
|
2954
2961
|
FilesArray.push(FileObject);
|
|
@@ -2975,7 +2982,7 @@ ImageUploaderComponent.controlContainerstatic = null;
|
|
|
2975
2982
|
ImageUploaderComponent.decorators = [
|
|
2976
2983
|
{ type: Component, args: [{
|
|
2977
2984
|
selector: 'BBSF-ImageUpload',
|
|
2978
|
-
template: "<div class=\"b-control b-image-upload\">\r\n <div class=\"form-group row validate is-invalid\" [formGroup]=\"group\">\r\n <label class=\"b-label col-form-label col-sm-12 \" [ngClass]=\"(options.ViewType==1)?'col-md-12':'col-md-3'\" [hidden]=\"options.HideLabel\">\r\n {{options.LabelValue}}\r\n <span *ngIf=\"(options.ShowAsterisk&&options.IsRequired)||(options.IsRequired)\" class=\"text-danger Required-text\" aria-required=\"true\"
|
|
2985
|
+
template: "<div class=\"b-control b-image-upload\">\r\n <div class=\"form-group row validate is-invalid\" [formGroup]=\"group\">\r\n <label class=\"b-label col-form-label col-sm-12 \" [ngClass]=\"(options.ViewType==1)?'col-md-12':'col-md-3'\" [hidden]=\"options.HideLabel\">\r\n {{options.LabelValue}}\r\n <span *ngIf=\"(options.ShowAsterisk&&options.IsRequired)||(options.IsRequired)\" class=\"text-danger Required-text\" aria-required=\"true\">* </span>\r\n\r\n <ejs-tooltip id=\"tooltip\" content='{{ValidationMessage}}' tipPointerPosition='Middle'>\r\n <i class=\"fa fa-info-circle\" data-plugin=\"tooltip\" data-html=\"true\">\r\n </i>\r\n </ejs-tooltip>\r\n </label>\r\n\r\n <div class=\"col-sm-12\" [ngClass]=\"(options.ViewType==1)?'':'col-md-9'\">\r\n\r\n <div *ngIf=\"options.AllowDropZone\" style=\"max-width:200px !important; max-height: 200px !important;\" class=\"d-inline-flex h-auto w-auto overflow-hidden m-0 {{options.ExtraClasses}}\" ngx-dropzone [disabled]=\"options.IsDisabled\" [accept]=\"AcceptedType\" [multiple]=\"options.IsMultiple\"\r\n (change)=\"onFileChange($event)\" aria-describedby=\"email-error\" aria-invalid=\"true\" ngDefaultControl formControlName=\"{{options.Name}}\" [maxFileSize]=\"options.FileMaxSizeInMB\"\r\n id=\"{{options.Name}}\" [class.is-invalid]=\"ImageUploadFormControl.invalid && ImageUploadFormControl.touched\">\r\n <ngx-dropzone-label class=\"h-100 m-0\" style=\"max-width: 200px !important;\">\r\n <div class=\"h-100\">\r\n <img [src]=\"ImageSource\" class=\"h-100 w-100\" />\r\n </div>\r\n </ngx-dropzone-label>\r\n\r\n\r\n <ngx-dropzone-image-preview style=\"max-width:200px !important; max-height: 200px !important;\" *ngFor=\"let f of files\" [file]=\"f\" [removable]=\"true\" (removed)=\"removeFromControlValue(f)\"\r\n ngProjectAs=\"ngx-dropzone-preview\" class=\"b-img-preview w-100 h-100 m-0\">\r\n </ngx-dropzone-image-preview>\r\n </div>\r\n\r\n <div class=\"ImageUploadClassSelector\" *ngIf=\"!options.AllowDropZone\">\r\n <ngx-dropzone-label class=\"h-100 m-0\" *ngIf=\"files.length==0\">\r\n <div style=\"max-width:200px !important; max-height: 200px !important;\" class=\"h-100 file-fake-input\" #element (click)=\"showImageUploader(element)\">\r\n <img [src]=\"ImageSource\" class=\"h-100 w-100\" />\r\n </div>\r\n </ngx-dropzone-label>\r\n\r\n <div style=\"border: none !important; max-width:200px !important; max-height: 200px !important;\" class=\" fileSelector customImageUploadPlacment d-inline-flex h-auto w-auto overflow-hidden m-0 {{options.ExtraClasses}}\" ngx-dropzone [disabled]=\"options.IsDisabled\" [accept]=\"AcceptedType\" [multiple]=\"options.IsMultiple\"\r\n (change)=\"onFileChange($event)\" aria-describedby=\"email-error\" aria-invalid=\"true\" ngDefaultControl formControlName=\"{{options.Name}}\" [maxFileSize]=\"options.FileMaxSizeInMB\"\r\n id=\"{{options.Name}}\" [class.is-invalid]=\"ImageUploadFormControl.invalid && ImageUploadFormControl.touched\">\r\n\r\n\r\n\r\n <ngx-dropzone-image-preview style=\"max-width:200px !important; max-height: 200px !important;\" *ngFor=\"let f of files\" [file]=\"f\" [removable]=\"true\" (removed)=\"removeFromControlValue(f)\"\r\n ngProjectAs=\"ngx-dropzone-preview\" class=\"b-img-preview w-100 h-100 m-0\">\r\n </ngx-dropzone-image-preview>\r\n </div>\r\n </div>\r\n\r\n\r\n <div id=\"mdlSample\" class=\"modal fade\" role=\"dialog\" style=\"z-index: 11 !important ;\"\r\n [ngStyle]=\"{'display': mdlSampleIsOpen ? 'block' : 'none', 'opacity': 1}\">\r\n <div class=\"modal-dialog modal-lg\">\r\n <div class=\"modal-content\">\r\n <div class=\"modal-header\">\r\n <h4 class=\"modal-title\">\r\n {{UtilityService.getResourceValue(\"CropImage\")}}\r\n </h4>\r\n <button type=\"button\" class=\"btn-close\" aria-hidden=\"true\" data-dismiss=\"modal\" aria-label=\"Close\" (click)=\"openModal(false)\"></button>\r\n </div>\r\n <div class=\"modal-body py-5\">\r\n <div *ngIf=\"imageUrl\">\r\n <angular-cropper #angularCropper [cropperOptions]=\"config\" [imageUrl]=\"imageUrl\">\r\n </angular-cropper>\r\n <img [src]=\"imgwUrl\" />\r\n </div>\r\n <div style=\"text-align:center;\">\r\n <div class=\"btn-group\">\r\n <button type=\"button\" (click)=\"zoomImage(0.1)\" class=\"btn btn-default\" data-method=\"zoom\" data-option=\"0.1\" title=\"Zoom In\">\r\n <span class=\"docs-tooltip\" data-toggle=\"tooltip\" title=\"\" data-original-title=\"cropper.zoom(0.1)\">\r\n <span class=\"fa fa-search-plus\"></span>\r\n </span>\r\n </button>\r\n <button type=\"button\" (click)=\"zoomImage(-0.1)\" class=\"btn btn-default\" data-method=\"zoom\" data-option=\"-0.1\" title=\"Zoom Out\">\r\n <span class=\"docs-tooltip\" data-toggle=\"tooltip\" title=\"\" data-original-title=\"cropper.zoom(-0.1)\">\r\n <span class=\"fa fa-search-minus\"></span>\r\n </span>\r\n </button>\r\n </div>\r\n <div class=\"btn-group\">\r\n <button type=\"button\" (click)=\"moveImage(-10,0)\" class=\"btn btn-default\" data-method=\"move\" data-option=\"-10\" data-second-option=\"0\" title=\"Move Left\">\r\n <span class=\"docs-tooltip\" data-toggle=\"tooltip\" title=\"\" data-original-title=\"cropper.move(-10, 0)\" aria-describedby=\"tooltip631939\">\r\n <span class=\"fa fa-arrow-left\"></span>\r\n </span>\r\n </button>\r\n <button type=\"button\" (click)=\"moveImage(10,0)\" class=\"btn btn-default\" data-method=\"move\" data-option=\"10\" data-second-option=\"0\" title=\"Move Right\">\r\n <span class=\"docs-tooltip\" data-toggle=\"tooltip\" title=\"\" data-original-title=\"cropper.move(10, 0)\">\r\n <span class=\"fa fa-arrow-right\"></span>\r\n </span>\r\n </button>\r\n <button type=\"button\" (click)=\"moveImage(0,-10)\" class=\"btn btn-default\" data-method=\"move\" data-option=\"0\" data-second-option=\"-10\" title=\"Move Up\">\r\n <span class=\"docs-tooltip\" data-toggle=\"tooltip\" title=\"\" data-original-title=\"cropper.move(0, -10)\">\r\n <span class=\"fa fa-arrow-up\"></span>\r\n </span>\r\n </button>\r\n <button type=\"button\" (click)=\"moveImage(0,10)\" class=\"btn btn-default\" data-method=\"move\" data-option=\"0\" data-second-option=\"10\" title=\"Move Down\">\r\n <span class=\"docs-tooltip\" data-toggle=\"tooltip\" title=\"\" data-original-title=\"cropper.move(0, 10)\">\r\n <span class=\"fa fa-arrow-down\"></span>\r\n </span>\r\n </button>\r\n </div>\r\n <div class=\"btn-group\">\r\n <button type=\"button\" (click)=\"rotateImage(-45)\" class=\"btn btn-default\" data-method=\"rotate\" data-option=\"-45\" title=\"Rotate Left\">\r\n <span class=\"docs-tooltip\" data-toggle=\"tooltip\" title=\"\" data-original-title=\"cropper.rotate(-45)\" aria-describedby=\"tooltip236044\">\r\n <span class=\"fa fa-undo-alt\"></span>\r\n </span>\r\n </button>\r\n <button type=\"button\" (click)=\"rotateImage(45)\" class=\"btn btn-default\" data-method=\"rotate\" data-option=\"45\" title=\"Rotate Right\">\r\n <span class=\"docs-tooltip\" data-toggle=\"tooltip\" title=\"\" data-original-title=\"cropper.rotate(45)\">\r\n <span class=\"fa fa-redo-alt\"></span>\r\n </span>\r\n </button>\r\n </div>\r\n\r\n </div>\r\n </div>\r\n <div class=\"modal-footer\" align=\"right\">\r\n <button type=\"button\" id=\"btnClose\" class=\"btn btn-default\" (click)=\"openModal(false)\">\r\n <i class=\"fa fa-times fa-fw\"></i> {{UtilityService.getResourceValue(\"CancelLabel\")}}\r\n </button>\r\n <button type=\"button\" (click)=\"cropImage()\" id=\"btnOK\" class=\"btn btn-success\">\r\n <i class=\"fa fa-check fa-fw\"></i>\r\n {{UtilityService.getResourceValue(\"Crop\")}}\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"text-danger Required-text\" *ngIf=\"(ImageUploadFormControl.invalid && ImageUploadFormControl.touched)\">\r\n {{getErrorValidation(ImageUploadFormControl.errors|keyvalue)}}\r\n </div>\r\n\r\n <div class=\"d-flex justify-content-between align-items-center\">\r\n <div class=\"control-desc text-dark\">{{options.LabelDescription}}</div>\r\n </div>\r\n <div *ngIf=\"(group.valid&&group.dirty&&group.touched )||(group.untouched&&group.invalid&&group.dirty) \">{{resetError()}}</div>\r\n </div>\r\n\r\n </div>\r\n</div>\r\n",
|
|
2979
2986
|
styles: [".e-tip-content{background-color:#afafaf;color:#fff;padding-left:10px;padding-right:10px;padding-top:2px}.my-drop-zone{border:dotted 3px lightgray}.nv-file-over{border:dotted 3px red}.another-file-over-class{border:dotted 3px green}html,body{height:100%}.modal{display:none;position:fixed;z-index:1;padding-top:100px;left:0;top:0;width:100%;height:100%;overflow:auto;background-color:#000;background-color:#0006}.modal-content{position:relative;background-color:#fefefe;margin:auto;padding:0;border:1px solid #888;width:80%;box-shadow:0 4px 8px #0003,0 6px 20px #00000030;-webkit-animation-name:animatetop;-webkit-animation-duration:.4s;animation-name:animatetop;animation-duration:.4s}@keyframes animatetop{0%{top:-300px;opacity:0}to{top:0;opacity:1}}.close{color:#fff;float:right;font-size:28px;font-weight:bold}.ImageUploadClassSelector img{cursor:pointer}.d-inline-flex.h-auto.m-0.overflow-hidden.w-auto.ng-untouched.ng-pristine.ng-valid{border-radius:40px;border-color:#c7c7c7}\n"]
|
|
2980
2987
|
},] }
|
|
2981
2988
|
];
|
|
@@ -3998,7 +4005,7 @@ class PagingComponent {
|
|
|
3998
4005
|
PagingComponent.decorators = [
|
|
3999
4006
|
{ type: Component, args: [{
|
|
4000
4007
|
selector: 'BBSF-Paging',
|
|
4001
|
-
template: "<div class=\"b-control b-paging\" *ngIf=\"(result.length > 0)\">\r\n <div class=\"d-flex justify-content-between align-items-center\" *ngIf=\"!options.IsLoadMoreControl\">\r\n <div class=\"b-pagination\">\r\n <jw-pagination [items]=\"items\" *ngIf=\"!((Pages==1)&&options.HidePaginationWhenPageSizeEqualOne)\"\r\n (changePage)=\"onChangePage($event)\" [pageSize]=\"options.PageSize\" [ShowFirstAndLast]=\"options.ShowFirstAndLast\"\r\n [initialPage]=\"1\" [maxPages]=\"10\"></jw-pagination>\r\n </div>\r\n <div class=\"b-pages d-flex\" *ngIf=\"!((Pages==1)&&options.HidePaginationWhenPageSizeEqualOne)\" >\r\n <select (change)=\"changePageSize($event)\" *ngIf=\"options.ShowPageSizeOption\">\r\n <option>10</option>\r\n <option>20</option>\r\n <option>50</option>\r\n <option>100</option>\r\n <option>200</option>\r\n </select>\r\n <div class=\"b-items ml-3\">\r\n <strong>{{totalRow}}</strong> {{utilityService.getResourceValue(\"ItemsIn\")}} <strong> {{Pages}}</strong> {{utilityService.getResourceValue(\"Pages\")}}\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <div class=\"row\" style=\"align-self:center; align-items: center; text-align: center;\" *ngIf=\"options.IsLoadMoreControl\">\r\n <div class=\"search-results\" infinite-scroll [infiniteScrollDistance]=\"ScrollDistance\"\r\n [infiniteScrollUpDistance]=\"ScrollUpDistance\" [infiniteScrollThrottle]=\"Throttle\" (scrolled)=\"options.IsInfiniteScroll==true?onScrollDown():null\"\r\n [scrollWindow]=\"options.ScrollWindow\" [infiniteScrollContainer]=\"options.InfiniteScrollContainer\">\r\n </div>\r\n <button class=\"btn btn-
|
|
4008
|
+
template: "<div class=\"b-control b-paging\" *ngIf=\"(result.length > 0)\">\r\n <div class=\"d-flex justify-content-between align-items-center\" *ngIf=\"!options.IsLoadMoreControl\">\r\n <div class=\"b-pagination\">\r\n <jw-pagination [items]=\"items\" *ngIf=\"!((Pages==1)&&options.HidePaginationWhenPageSizeEqualOne)\"\r\n (changePage)=\"onChangePage($event)\" [pageSize]=\"options.PageSize\" [ShowFirstAndLast]=\"options.ShowFirstAndLast\"\r\n [initialPage]=\"1\" [maxPages]=\"10\"></jw-pagination>\r\n </div>\r\n <div class=\"b-pages d-flex\" *ngIf=\"!((Pages==1)&&options.HidePaginationWhenPageSizeEqualOne)\" >\r\n <select (change)=\"changePageSize($event)\" *ngIf=\"options.ShowPageSizeOption\">\r\n <option>10</option>\r\n <option>20</option>\r\n <option>50</option>\r\n <option>100</option>\r\n <option>200</option>\r\n </select>\r\n <div class=\"b-items ml-3\">\r\n <strong>{{totalRow}}</strong> {{utilityService.getResourceValue(\"ItemsIn\")}} <strong> {{Pages}}</strong> {{utilityService.getResourceValue(\"Pages\")}}\r\n </div>\r\n </div>\r\n </div>\r\n \r\n <div class=\"row\" style=\"align-self:center; align-items: center; text-align: center;\" *ngIf=\"options.IsLoadMoreControl\">\r\n <div class=\"search-results\" infinite-scroll [infiniteScrollDistance]=\"ScrollDistance\"\r\n [infiniteScrollUpDistance]=\"ScrollUpDistance\" [infiniteScrollThrottle]=\"Throttle\" (scrolled)=\"options.IsInfiniteScroll==true?onScrollDown():null\"\r\n [scrollWindow]=\"options.ScrollWindow\" [infiniteScrollContainer]=\"options.InfiniteScrollContainer\">\r\n </div>\r\n <button class=\"btn btn-info\" (click)=\"onScrollDown()\" *ngIf=\"!(result.length==totalRow)\">{{utilityService.getResourceValue(\"LoadMore\")}}</button>\r\n </div>\r\n</div>\r\n",
|
|
4002
4009
|
styles: [".ngx-pager-container{text-align:center;padding:25px 0 0}.ngx-pager-container li{display:inline-block;margin:0 4px}.ngx-pager-container li a{display:block;width:26px;height:26px;border:1px solid #707070;text-align:center;color:#3e4e59;font-size:14px;line-height:24px;border-radius:5px;text-decoration:none}.ngx-pager-container li a:hover{color:#fff;background:#0a0e03}.ngx-pager-container li.invisible{display:none}.ngx-pager-container li.active{background:#0a0e03;border-radius:5px}.ngx-pager-container li.active a{border:none;color:#fff}\n"]
|
|
4003
4010
|
},] }
|
|
4004
4011
|
];
|
|
@@ -4439,7 +4446,7 @@ TextboxComponent.controlContainerstatic = null;
|
|
|
4439
4446
|
TextboxComponent.decorators = [
|
|
4440
4447
|
{ type: Component, args: [{
|
|
4441
4448
|
selector: 'BBSF-TextBox',
|
|
4442
|
-
template: "<div class=\"b-control b-textbox\">\r\n
|
|
4449
|
+
template: "<div class=\"b-control b-textbox\">\r\n <div class=\"form-group row validate is-invalid\" [formGroup]=\"group\" [ngClass]=\"(options.NoMargin==true)?'':'NoMargin'\">\r\n <label class=\"b-label col-form-label col-sm-12 \" [ngClass]=\"(options.ViewType==1)?'col-md-12':'col-md-3'\" *ngIf=\"!options.HideLabel\">\r\n {{options.LabelValue}}\r\n <span *ngIf=\"(options.ShowAsterisk&&options.IsRequired)||(options.IsRequired)\" class=\"text-danger Required-text\"\r\n aria-required=\"true\">*</span>\r\n </label>\r\n\r\n <div class=\"col-sm-12\" [ngClass]=\"(options.ViewType==1)?'': ((options.HideLabel)?'col-md-12':'col-md-9')\">\r\n <div class=\"input-group align-items-center\" *ngIf=\"MaskPattern!=null&&MaskPattern!=''\">\r\n <div class=\"svg svg-icon-grey\" [ngClass]=\"(options.IconPosition==1)?'left-icon':'right-icon'\" *ngIf=\"options.Icon!=null\">\r\n <span [inlineSVG]=\"options.Icon\"></span>\r\n </div>\r\n <input [mask]=\"MaskPattern\" placeHolderCharacter=\" \" [showMaskTyped]=\"true\" [validation]=\"true\"\r\n class=\"form-control bnsights-control {{options.ExtraClasses}}\"\r\n dir=\"{{options.ForceDirection==2?'rtl':''}}\"\r\n aria-describedby=\"email-error\" aria-invalid=\"true\" formControlName=\"{{options.Name}}\"\r\n type=\"{{getInputType(options.Type)}}\"\r\n [class.is-invalid]=\"TextBoxFormControl.invalid && TextBoxFormControl.touched\"\r\n placeholder=\"{{options.Placeholder}}\" id=\"{{options.Name}}\" autocomplete=\"{{options.AutoComplete}}\"\r\n (change)=\"trimControlValue()\" (keyup)=\"onTextChange()\"\r\n (keydown)=\"WordCountArray>options.MaxWordCount&&$event.keyCode !=8?$event.preventDefault():null\"\r\n #userinput>\r\n <div class=\"input-group-append\">\r\n <span class=\"input-group-text\" *ngIf=\"options.EnableCopyToClipboard\" (click)=\"copyInputMessage(userinput)\">\r\n <i class=\"fas fa-copy\"></i>\r\n </span>\r\n </div>\r\n <div class=\"text-muted font-weight-500 word-count\" *ngIf=\"options.MaxWordCount>0&&IsShowWordCount\">{{WordCount}}/{{options.MaxWordCount}} Words</div>\r\n </div>\r\n\r\n <div class=\"input-group align-items-center\" *ngIf=\"MaskPattern==null||MaskPattern==''\">\r\n <div class=\"svg svg-icon-grey\" [ngClass]=\"(options.IconPosition==1)?'left-icon':'right-icon'\" *ngIf=\"options.Icon!=null\">\r\n <span [inlineSVG]=\"options.Icon\"></span>\r\n </div>\r\n <input class=\"form-control bnsights-control {{options.ExtraClasses}} \"\r\n dir=\"{{options.ForceDirection==2?'rtl':''}}\"\r\n (focus)=\"showWordCount(true)\" (focusout)=\"showWordCount(false)\"\r\n maxlength=\"{{options.MaxLength}}\" minlength=\"{{options.MinLength}}\"\r\n aria-describedby=\"email-error\"\r\n aria-invalid=\"true\" formControlName=\"{{options.Name}}\" type=\"{{getInputType(options.Type)}}\"\r\n [class.is-invalid]=\"TextBoxFormControl.invalid && TextBoxFormControl.touched\"\r\n placeholder=\"{{options.Placeholder}}\" id=\"{{options.Name}}\" autocomplete=\"{{options.AutoComplete}}\"\r\n (change)=\"trimControlValue()\" (keyup)=\"onTextChange()\"\r\n (keydown)=\"WordCountArray>options.MaxWordCount&&$event.keyCode !=8?$event.preventDefault():null\"\r\n #userinput>\r\n <div class=\"input-group-append\" *ngIf=\"options.EnableCopyToClipboard\">\r\n <span class=\"input-group-text\" (click)=\"copyInputMessage(userinput)\">\r\n <i class=\"fas fa-copy\"></i>\r\n </span>\r\n </div>\r\n <div class=\"text-muted font-weight-500 word-count float-end\" *ngIf=\"options.MaxWordCount>0&&IsShowWordCount\">{{WordCount}}/{{options.MaxWordCount}} Words</div>\r\n </div>\r\n <div class=\"text-danger Required-text\" dir=\"{{options.ForceDirection==2?'rtl':''}}\"\r\n *ngIf=\"(TextBoxFormControl.invalid && TextBoxFormControl.touched)\">\r\n {{getErrorValidation(TextBoxFormControl.errors|keyvalue)}}\r\n </div>\r\n <div class=\"control-desc\" *ngIf=\"options.LabelDescription!=null\">{{options.LabelDescription}}</div>\r\n <div *ngIf=\"(group.valid&&group.dirty&&group.touched )||(group.untouched&&group.invalid&&group.dirty) \">{{resetError()}}</div>\r\n </div>\r\n </div>\r\n</div>\r\n",
|
|
4443
4450
|
styles: [".example-form{min-width:150px;max-width:500px;width:100%}.example-full-width{width:100%}.flip_V{transform:scaleY(-1)}\n"]
|
|
4444
4451
|
},] }
|
|
4445
4452
|
];
|
|
@@ -5061,7 +5068,7 @@ class ConfirmationModalComponent {
|
|
|
5061
5068
|
showCancelButton: true,
|
|
5062
5069
|
confirmButtonColor: this.btnColor,
|
|
5063
5070
|
cancelButtonColor: '#f5f8fa',
|
|
5064
|
-
cancelButtonText: this.utilityService.getResourceValue("
|
|
5071
|
+
cancelButtonText: this.utilityService.getResourceValue("CancelLabel"),
|
|
5065
5072
|
confirmButtonText: this.options.SubmitButtonText,
|
|
5066
5073
|
showCloseButton: true,
|
|
5067
5074
|
}).then((result) => {
|
|
@@ -5148,6 +5155,1060 @@ ConfirmationModalComponent.propDecorators = {
|
|
|
5148
5155
|
confirmationModal: [{ type: ViewChild, args: ['confirmationModal', { static: false },] }]
|
|
5149
5156
|
};
|
|
5150
5157
|
|
|
5158
|
+
class NgTemplateNameDirective {
|
|
5159
|
+
constructor(template) {
|
|
5160
|
+
this.template = template;
|
|
5161
|
+
}
|
|
5162
|
+
}
|
|
5163
|
+
NgTemplateNameDirective.decorators = [
|
|
5164
|
+
{ type: Directive, args: [{
|
|
5165
|
+
selector: 'ng-template[name]'
|
|
5166
|
+
},] }
|
|
5167
|
+
];
|
|
5168
|
+
NgTemplateNameDirective.ctorParameters = () => [
|
|
5169
|
+
{ type: TemplateRef }
|
|
5170
|
+
];
|
|
5171
|
+
NgTemplateNameDirective.propDecorators = {
|
|
5172
|
+
name: [{ type: Input }]
|
|
5173
|
+
};
|
|
5174
|
+
|
|
5175
|
+
class RepeaterComponent {
|
|
5176
|
+
constructor() {
|
|
5177
|
+
this.templateRefs = [];
|
|
5178
|
+
this.items = [];
|
|
5179
|
+
this.repeaterContext = { index: 0, delete: null, elements: null };
|
|
5180
|
+
}
|
|
5181
|
+
ngOnInit() {
|
|
5182
|
+
this.currentTemplate = this.initialTemplate;
|
|
5183
|
+
this.repeaterGroup = new FormGroup({});
|
|
5184
|
+
this.group.addControl(this.options.Name, this.repeaterGroup);
|
|
5185
|
+
this.group.get(this.options.Name).setValue(this.options.RepeaterValue);
|
|
5186
|
+
for (let index = 0; index < this.options.MinRequiredItems; index++) {
|
|
5187
|
+
this.items.push(index);
|
|
5188
|
+
}
|
|
5189
|
+
this.repeaterGroup.valueChanges.subscribe((res) => {
|
|
5190
|
+
let result = [];
|
|
5191
|
+
let rowNumber = [];
|
|
5192
|
+
let addItems = [];
|
|
5193
|
+
for (const key in this.repeaterGroup.controls) {
|
|
5194
|
+
if (Object.prototype.hasOwnProperty.call(this.repeaterGroup.controls, key)) {
|
|
5195
|
+
const keySplitArr = key.split('.');
|
|
5196
|
+
let item = {
|
|
5197
|
+
[keySplitArr[1]]: { [keySplitArr[0]]: this.group.controls[this.options.Name].value[key] }
|
|
5198
|
+
};
|
|
5199
|
+
addItems.push(item);
|
|
5200
|
+
if (!rowNumber.includes(keySplitArr[1]))
|
|
5201
|
+
rowNumber.push(keySplitArr[1]);
|
|
5202
|
+
}
|
|
5203
|
+
}
|
|
5204
|
+
for (let index = 0; index < rowNumber.length; index++) {
|
|
5205
|
+
const row = rowNumber[index];
|
|
5206
|
+
let addObject = {};
|
|
5207
|
+
let filteredElements = addItems.filter(item => item[row]);
|
|
5208
|
+
for (let index = 0; index < filteredElements.length; index++) {
|
|
5209
|
+
const filteredElement = filteredElements[index];
|
|
5210
|
+
for (const key in filteredElement) {
|
|
5211
|
+
if (Object.prototype.hasOwnProperty.call(filteredElement, key)) {
|
|
5212
|
+
const element = filteredElement[key];
|
|
5213
|
+
for (const key in element) {
|
|
5214
|
+
if (Object.prototype.hasOwnProperty.call(element, key)) {
|
|
5215
|
+
const value = element[key];
|
|
5216
|
+
addObject[key] = value;
|
|
5217
|
+
}
|
|
5218
|
+
}
|
|
5219
|
+
}
|
|
5220
|
+
}
|
|
5221
|
+
}
|
|
5222
|
+
result.push(addObject);
|
|
5223
|
+
}
|
|
5224
|
+
this.options.RepeaterValue = result;
|
|
5225
|
+
});
|
|
5226
|
+
}
|
|
5227
|
+
deleteItem(Index) {
|
|
5228
|
+
if (this.items.length == this.options.MinRequiredItems && this.options.IsRequired)
|
|
5229
|
+
return;
|
|
5230
|
+
let deletedControls = [];
|
|
5231
|
+
let controlNames = this.options.RepeaterStructure.map(e => e.ControlOptions.Name);
|
|
5232
|
+
for (const key in this.repeaterGroup.controls) {
|
|
5233
|
+
if (Object.prototype.hasOwnProperty.call(this.repeaterGroup.controls, key)) {
|
|
5234
|
+
for (let index = 0; index < controlNames.length; index++) {
|
|
5235
|
+
const element = controlNames[index];
|
|
5236
|
+
const keySplitArr = key.split('.');
|
|
5237
|
+
if (keySplitArr[0] + keySplitArr[1] == `${element}${Index}`) {
|
|
5238
|
+
const element = this.repeaterGroup.controls[key];
|
|
5239
|
+
deletedControls.push({ [key]: element });
|
|
5240
|
+
}
|
|
5241
|
+
}
|
|
5242
|
+
}
|
|
5243
|
+
}
|
|
5244
|
+
for (let index = 0; index < deletedControls.length; index++) {
|
|
5245
|
+
const element = deletedControls[index];
|
|
5246
|
+
for (const key in element) {
|
|
5247
|
+
if (Object.prototype.hasOwnProperty.call(element, key)) {
|
|
5248
|
+
this.repeaterGroup.removeControl(key);
|
|
5249
|
+
}
|
|
5250
|
+
}
|
|
5251
|
+
}
|
|
5252
|
+
let item = this.items[Index];
|
|
5253
|
+
this.items = this.items.filter((res) => res != item);
|
|
5254
|
+
}
|
|
5255
|
+
AddItem() {
|
|
5256
|
+
this.items.push(this.items.length + 1);
|
|
5257
|
+
}
|
|
5258
|
+
ngAfterViewInit() {
|
|
5259
|
+
let templateRefs = this._templates["_results"].map((item) => item["template"]);
|
|
5260
|
+
this.templateRefs = templateRefs;
|
|
5261
|
+
this.repeaterContext.elements = this.templateRefs;
|
|
5262
|
+
this.repeaterContext.delete = this.delete;
|
|
5263
|
+
}
|
|
5264
|
+
setCurrentIndex(i) {
|
|
5265
|
+
this.repeaterContext.index = i;
|
|
5266
|
+
}
|
|
5267
|
+
}
|
|
5268
|
+
RepeaterComponent.decorators = [
|
|
5269
|
+
{ type: Component, args: [{
|
|
5270
|
+
selector: 'BBSF-repeater',
|
|
5271
|
+
template: "<div *ngFor='let item of items ; index as i'>\r\n {{setCurrentIndex(i)}}\r\n <ng-container *ngTemplateOutlet=\"currentTemplate; context: repeaterContext\">\r\n </ng-container>\r\n\r\n</div>\r\n\r\n<div>\r\n <ng-container *ngTemplateOutlet=\"add\">\r\n </ng-container>\r\n</div>\r\n\r\n<ng-template *ngFor=\"let RepeaterField of options.RepeaterStructure ; index as i\" name=\"R{{i}}\" \r\n let-Index=\"itemIndex\" let-control=\"controlIndex\">\r\n <repeater-field-builder *ngIf=\"RepeaterField\" [RepeaterField]=\"RepeaterField\" [itemNumber]=\"Index\" [controlNumber]=\"control\"\r\n [group]=\"repeaterGroup\"></repeater-field-builder>\r\n</ng-template>\r\n\r\n<ng-template #delete let-item=\"itemIndex\">\r\n <button class=\"{{options.DeleteButtonExtraClasses}}\" type=\"button\" (click)=\"deleteItem(item)\"\r\n [disabled]=\"items.length ==options.MinRequiredItems&&options.IsRequired\"> <span [innerHTML]=\"options.DeleteButtonText\"></span></button>\r\n</ng-template>\r\n\r\n<ng-template #add>\r\n <button class=\"{{options.AddButtonExtraClasses}}\" type=\"button\"\r\n (click)=\"AddItem()\"><span [innerHTML]=\"options.AddButtonText\"></span></button>\r\n</ng-template>\r\n\r\n\r\n\r\n\r\n\r\n<!-- <ng-template adHost></ng-template> -->",
|
|
5272
|
+
styles: [""]
|
|
5273
|
+
},] }
|
|
5274
|
+
];
|
|
5275
|
+
RepeaterComponent.ctorParameters = () => [];
|
|
5276
|
+
RepeaterComponent.propDecorators = {
|
|
5277
|
+
group: [{ type: Input }],
|
|
5278
|
+
options: [{ type: Input }],
|
|
5279
|
+
initialTemplate: [{ type: Input }],
|
|
5280
|
+
_templates: [{ type: ViewChildren, args: [NgTemplateNameDirective,] }],
|
|
5281
|
+
delete: [{ type: ViewChild, args: ['delete', { static: false },] }]
|
|
5282
|
+
};
|
|
5283
|
+
|
|
5284
|
+
var PermissionSets;
|
|
5285
|
+
(function (PermissionSets) {
|
|
5286
|
+
PermissionSets[PermissionSets["Admin"] = 1] = "Admin";
|
|
5287
|
+
PermissionSets[PermissionSets["BusinessAdmin"] = 2] = "BusinessAdmin";
|
|
5288
|
+
PermissionSets[PermissionSets["Customer"] = 3] = "Customer";
|
|
5289
|
+
})(PermissionSets || (PermissionSets = {}));
|
|
5290
|
+
var PropertyLocation;
|
|
5291
|
+
(function (PropertyLocation) {
|
|
5292
|
+
PropertyLocation[PropertyLocation["InternalIdeas"] = 53001] = "InternalIdeas";
|
|
5293
|
+
PropertyLocation[PropertyLocation["EvaluationRequest"] = 53002] = "EvaluationRequest";
|
|
5294
|
+
PropertyLocation[PropertyLocation["IMOBusiness"] = 53003] = "IMOBusiness";
|
|
5295
|
+
PropertyLocation[PropertyLocation["PublicIdeas"] = 53004] = "PublicIdeas";
|
|
5296
|
+
})(PropertyLocation || (PropertyLocation = {}));
|
|
5297
|
+
var LanguageType;
|
|
5298
|
+
(function (LanguageType) {
|
|
5299
|
+
LanguageType[LanguageType["English"] = 54001] = "English";
|
|
5300
|
+
LanguageType[LanguageType["Arabic"] = 54002] = "Arabic";
|
|
5301
|
+
LanguageType[LanguageType["Any"] = 54003] = "Any";
|
|
5302
|
+
})(LanguageType || (LanguageType = {}));
|
|
5303
|
+
var DataType;
|
|
5304
|
+
(function (DataType) {
|
|
5305
|
+
DataType[DataType["Text"] = 52001] = "Text";
|
|
5306
|
+
DataType[DataType["Email"] = 52002] = "Email";
|
|
5307
|
+
DataType[DataType["Number"] = 52005] = "Number";
|
|
5308
|
+
DataType[DataType["Name"] = 52003] = "Name";
|
|
5309
|
+
DataType[DataType["Mobile"] = 52004] = "Mobile";
|
|
5310
|
+
DataType[DataType["MultilineText"] = 52006] = "MultilineText";
|
|
5311
|
+
DataType[DataType["HTML"] = 52007] = "HTML";
|
|
5312
|
+
DataType[DataType["Image"] = 52010] = "Image";
|
|
5313
|
+
DataType[DataType["File"] = 52011] = "File";
|
|
5314
|
+
DataType[DataType["MultiFile"] = 52012] = "MultiFile";
|
|
5315
|
+
DataType[DataType["Boolean"] = 52013] = "Boolean";
|
|
5316
|
+
DataType[DataType["Date"] = 52014] = "Date";
|
|
5317
|
+
DataType[DataType["DateTime"] = 52015] = "DateTime";
|
|
5318
|
+
DataType[DataType["Time"] = 52016] = "Time";
|
|
5319
|
+
DataType[DataType["Location"] = 52017] = "Location";
|
|
5320
|
+
DataType[DataType["SingleSelect"] = 52008] = "SingleSelect";
|
|
5321
|
+
DataType[DataType["MulipleSelect"] = 52009] = "MulipleSelect";
|
|
5322
|
+
DataType[DataType["Goal"] = 52018] = "Goal";
|
|
5323
|
+
DataType[DataType["Challenge"] = 52019] = "Challenge";
|
|
5324
|
+
DataType[DataType["CoverPhoto"] = 52020] = "CoverPhoto";
|
|
5325
|
+
DataType[DataType["InnovationLab"] = 52021] = "InnovationLab";
|
|
5326
|
+
DataType[DataType["Country"] = 52022] = "Country";
|
|
5327
|
+
})(DataType || (DataType = {}));
|
|
5328
|
+
|
|
5329
|
+
var ForceDirection;
|
|
5330
|
+
(function (ForceDirection) {
|
|
5331
|
+
ForceDirection[ForceDirection["English"] = 1] = "English";
|
|
5332
|
+
ForceDirection[ForceDirection["Arabic"] = 2] = "Arabic";
|
|
5333
|
+
})(ForceDirection || (ForceDirection = {}));
|
|
5334
|
+
|
|
5335
|
+
class DatePickerOptions {
|
|
5336
|
+
constructor() {
|
|
5337
|
+
/** to set type of view if DatePicker is Vertical or Horizontal */
|
|
5338
|
+
this.ViewType = ControlLayout.Vertical;
|
|
5339
|
+
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5340
|
+
*/
|
|
5341
|
+
this.CustomValidation = [];
|
|
5342
|
+
/**To set First Day Of Week to DatePicker */
|
|
5343
|
+
this.FirstDayOfWeek = 1;
|
|
5344
|
+
/**To set PickerType to DatePicker is Calendar or Timer Or Both */
|
|
5345
|
+
this.PickerType = PickerType.Calendar;
|
|
5346
|
+
/**To set StartView to DatePicker is Year or Month Or Multi-Year */
|
|
5347
|
+
this.StartView = StartView.Month;
|
|
5348
|
+
/**To set SelectMode to DatePicker is Single or Range */
|
|
5349
|
+
this.SelectMode = SelectMode.Single;
|
|
5350
|
+
this.ForceDirection = ForceDirection.English;
|
|
5351
|
+
}
|
|
5352
|
+
}
|
|
5353
|
+
|
|
5354
|
+
class DropdownOptions {
|
|
5355
|
+
constructor() {
|
|
5356
|
+
/** Disable Bootstrap DropdownList */
|
|
5357
|
+
this.DisableBootstrapSelect = false;
|
|
5358
|
+
/** to set type of view if DropdownList is Vertical or Horizontal */
|
|
5359
|
+
this.ViewType = null;
|
|
5360
|
+
/** To Set Custom Validation*/
|
|
5361
|
+
this.CustomValidation = [];
|
|
5362
|
+
/** Set key for item in DropdownList */
|
|
5363
|
+
this.ItemTempletkey = "key";
|
|
5364
|
+
/** Set value for item in DropdownList */
|
|
5365
|
+
this.ItemTempletvalue = "value";
|
|
5366
|
+
this.ForceDirection = ForceDirection.English;
|
|
5367
|
+
}
|
|
5368
|
+
}
|
|
5369
|
+
|
|
5370
|
+
class FileUploadOptions {
|
|
5371
|
+
constructor() {
|
|
5372
|
+
/** Ability to set FileInput required */
|
|
5373
|
+
this.IsMultipleFile = false;
|
|
5374
|
+
/** Sets boolean Value to Show IsDropZone Or Not */
|
|
5375
|
+
this.IsDropZone = false;
|
|
5376
|
+
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5377
|
+
*/
|
|
5378
|
+
this.CustomValidation = [];
|
|
5379
|
+
/** to set type of view if textbox is Vertical or Horizontal */
|
|
5380
|
+
this.ViewType = null;
|
|
5381
|
+
}
|
|
5382
|
+
}
|
|
5383
|
+
|
|
5384
|
+
class HtmlEditorOptions {
|
|
5385
|
+
constructor() {
|
|
5386
|
+
/** to set type of view if textbox is Vertical or Horizontal */
|
|
5387
|
+
this.ViewType = null;
|
|
5388
|
+
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5389
|
+
*/
|
|
5390
|
+
this.CustomValidation = [];
|
|
5391
|
+
/** to set Direction of HtmlEditor if HtmlEditor is Arabic or English */
|
|
5392
|
+
this.ForceDirection = ForceDirection.English;
|
|
5393
|
+
/** Set Height For */
|
|
5394
|
+
this.Height = 150;
|
|
5395
|
+
}
|
|
5396
|
+
}
|
|
5397
|
+
|
|
5398
|
+
var ImageType;
|
|
5399
|
+
(function (ImageType) {
|
|
5400
|
+
ImageType["ImageTypes"] = "image/png,image/bmp,image/jpeg";
|
|
5401
|
+
ImageType["PNG"] = "image/png";
|
|
5402
|
+
ImageType["JPG"] = "image/jpeg";
|
|
5403
|
+
ImageType["JPEG"] = "image/jpeg";
|
|
5404
|
+
ImageType["SVG"] = "image/svg+xml";
|
|
5405
|
+
ImageType["None"] = "";
|
|
5406
|
+
})(ImageType || (ImageType = {}));
|
|
5407
|
+
|
|
5408
|
+
class ImageUploadOptions {
|
|
5409
|
+
constructor() {
|
|
5410
|
+
/** Allow to Upload Multiple File */
|
|
5411
|
+
this.IsMultiple = false;
|
|
5412
|
+
/** Allow to Use Drop Zone */
|
|
5413
|
+
this.AllowDropZone = false;
|
|
5414
|
+
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5415
|
+
*/
|
|
5416
|
+
this.CustomValidation = [];
|
|
5417
|
+
/** to set type of view if FileInput is Vertical or Horizontal */
|
|
5418
|
+
this.ViewType = null;
|
|
5419
|
+
/** Set List of Custom Attribute to FileInput */
|
|
5420
|
+
this.FileUploadAcceptsTypes = [ImageType.ImageTypes];
|
|
5421
|
+
}
|
|
5422
|
+
}
|
|
5423
|
+
|
|
5424
|
+
class MapAutoCompleteOptions {
|
|
5425
|
+
constructor() {
|
|
5426
|
+
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5427
|
+
*/
|
|
5428
|
+
this.CustomValidation = [];
|
|
5429
|
+
/** to set type of view if MapAutoComplete is Vertical or Horizontal */
|
|
5430
|
+
this.ViewType = null;
|
|
5431
|
+
}
|
|
5432
|
+
}
|
|
5433
|
+
|
|
5434
|
+
class PhoneOptions {
|
|
5435
|
+
constructor() {
|
|
5436
|
+
/**
|
|
5437
|
+
* Represent Css classes to Phonebox
|
|
5438
|
+
*/
|
|
5439
|
+
this.ExtraClasses = "form-control bnsights-control";
|
|
5440
|
+
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5441
|
+
*/
|
|
5442
|
+
this.CustomValidation = [];
|
|
5443
|
+
/**Set List Of Countries As Preferred Countries*/
|
|
5444
|
+
this.PreferredCountries = [];
|
|
5445
|
+
/** to set type of view if Phonebox is Vertical or Horizontal */
|
|
5446
|
+
this.ViewType = null;
|
|
5447
|
+
this.ForceDirection = ForceDirection.English;
|
|
5448
|
+
}
|
|
5449
|
+
}
|
|
5450
|
+
|
|
5451
|
+
class RangeNumber {
|
|
5452
|
+
}
|
|
5453
|
+
|
|
5454
|
+
class TextAreaOptions {
|
|
5455
|
+
constructor() {
|
|
5456
|
+
/** to set type of view if TextArea is Vertical or Horizontal */
|
|
5457
|
+
this.ViewType = null;
|
|
5458
|
+
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5459
|
+
*/
|
|
5460
|
+
this.CustomValidation = [];
|
|
5461
|
+
/** to set Direction of TextArea if TextArea is Arabic or English */
|
|
5462
|
+
this.ForceDirection = ForceDirection.English;
|
|
5463
|
+
}
|
|
5464
|
+
}
|
|
5465
|
+
|
|
5466
|
+
var IconPosition;
|
|
5467
|
+
(function (IconPosition) {
|
|
5468
|
+
IconPosition[IconPosition["left"] = 1] = "left";
|
|
5469
|
+
IconPosition[IconPosition["right"] = 2] = "right";
|
|
5470
|
+
})(IconPosition || (IconPosition = {}));
|
|
5471
|
+
|
|
5472
|
+
class TextBoxOptions {
|
|
5473
|
+
constructor() {
|
|
5474
|
+
/** set Range Number to Textbox with type number with From-Value and To-value*/
|
|
5475
|
+
this.NumberRange = new RangeNumber();
|
|
5476
|
+
/**Prevent AutoComplete of textbox*/
|
|
5477
|
+
this.AutoComplete = "off";
|
|
5478
|
+
/** to set type of view if textbox is Vertical or Horizontal */
|
|
5479
|
+
this.ViewType = null;
|
|
5480
|
+
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5481
|
+
*/
|
|
5482
|
+
this.CustomValidation = [];
|
|
5483
|
+
/** to set Direction of textbox if textbox is Arabic or English */
|
|
5484
|
+
this.ForceDirection = null;
|
|
5485
|
+
/** Set Type of TextBox ("text","password","email","number") */
|
|
5486
|
+
this.Type = InputType.Text;
|
|
5487
|
+
this.IconPosition = IconPosition.left;
|
|
5488
|
+
this.NoMargin = false;
|
|
5489
|
+
this.ValidationRules = [];
|
|
5490
|
+
}
|
|
5491
|
+
}
|
|
5492
|
+
|
|
5493
|
+
class ToggleSlideOptions {
|
|
5494
|
+
constructor() {
|
|
5495
|
+
this.ViewType = null;
|
|
5496
|
+
this.ForceDirection = ForceDirection.English;
|
|
5497
|
+
}
|
|
5498
|
+
}
|
|
5499
|
+
|
|
5500
|
+
class RenderComponentService {
|
|
5501
|
+
constructor(componentFactoryResolver) {
|
|
5502
|
+
this.componentFactoryResolver = componentFactoryResolver;
|
|
5503
|
+
}
|
|
5504
|
+
renderDynamicComponent(viewContainerRef, component, group, options) {
|
|
5505
|
+
let factory = this.componentFactoryResolver.resolveComponentFactory(component);
|
|
5506
|
+
const componentRef = viewContainerRef.createComponent(factory);
|
|
5507
|
+
componentRef.instance.group = group;
|
|
5508
|
+
componentRef.instance.options = options;
|
|
5509
|
+
}
|
|
5510
|
+
}
|
|
5511
|
+
RenderComponentService.decorators = [
|
|
5512
|
+
{ type: Injectable }
|
|
5513
|
+
];
|
|
5514
|
+
RenderComponentService.ctorParameters = () => [
|
|
5515
|
+
{ type: ComponentFactoryResolver }
|
|
5516
|
+
];
|
|
5517
|
+
|
|
5518
|
+
class RepeaterFieldBuilderComponent {
|
|
5519
|
+
constructor(renderComponentService, TextControlHost) {
|
|
5520
|
+
this.renderComponentService = renderComponentService;
|
|
5521
|
+
this.TextControlHost = TextControlHost;
|
|
5522
|
+
}
|
|
5523
|
+
ngOnInit() {
|
|
5524
|
+
}
|
|
5525
|
+
ngAfterViewInit() {
|
|
5526
|
+
setTimeout(() => {
|
|
5527
|
+
this.Item.clear();
|
|
5528
|
+
switch (this.RepeaterField.ControlType) {
|
|
5529
|
+
///TextBox
|
|
5530
|
+
case DataType.Text:
|
|
5531
|
+
let Text = new TextBoxOptions();
|
|
5532
|
+
Text.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5533
|
+
Text.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5534
|
+
Text.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5535
|
+
Text.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5536
|
+
Text.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5537
|
+
Text.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5538
|
+
Text.Type = InputType.Text;
|
|
5539
|
+
if (this.RepeaterField.ControlOptions.maxLength)
|
|
5540
|
+
Text.MaxLength = this.RepeaterField.ControlOptions.maxLength;
|
|
5541
|
+
if (this.RepeaterField.ControlOptions.minLength)
|
|
5542
|
+
Text.MinLength = this.RepeaterField.ControlOptions.minLength;
|
|
5543
|
+
this.renderComponentService.renderDynamicComponent(this.Item, TextboxComponent, this.group, Text);
|
|
5544
|
+
break;
|
|
5545
|
+
case DataType.Name:
|
|
5546
|
+
let Name = new TextBoxOptions();
|
|
5547
|
+
Name.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5548
|
+
Name.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5549
|
+
Name.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5550
|
+
Name.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5551
|
+
Name.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5552
|
+
Name.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5553
|
+
if (this.RepeaterField.ControlOptions.maxLength)
|
|
5554
|
+
Name.MaxLength = this.RepeaterField.ControlOptions.maxLength;
|
|
5555
|
+
if (this.RepeaterField.ControlOptions.minLength)
|
|
5556
|
+
Name.MinLength = this.RepeaterField.ControlOptions.minLength;
|
|
5557
|
+
Name.Type = InputType.Text;
|
|
5558
|
+
this.renderComponentService.renderDynamicComponent(this.Item, TextboxComponent, this.group, Name);
|
|
5559
|
+
break;
|
|
5560
|
+
case DataType.Email:
|
|
5561
|
+
let Email = new TextBoxOptions();
|
|
5562
|
+
Email.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5563
|
+
Email.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5564
|
+
Email.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5565
|
+
Email.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5566
|
+
Email.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5567
|
+
Email.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5568
|
+
Email.Type = InputType.Email;
|
|
5569
|
+
this.renderComponentService.renderDynamicComponent(this.Item, TextboxComponent, this.group, Email);
|
|
5570
|
+
break;
|
|
5571
|
+
case DataType.Number:
|
|
5572
|
+
let Number = new TextBoxOptions();
|
|
5573
|
+
Number.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5574
|
+
Number.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5575
|
+
Number.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5576
|
+
Number.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5577
|
+
Number.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5578
|
+
Number.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5579
|
+
Number.Type = InputType.Number;
|
|
5580
|
+
let rangeNumber = new RangeNumber();
|
|
5581
|
+
rangeNumber.To = this.RepeaterField.ControlOptions.maxLength;
|
|
5582
|
+
rangeNumber.From = this.RepeaterField.ControlOptions.minLength;
|
|
5583
|
+
Number.NumberRange = rangeNumber;
|
|
5584
|
+
this.renderComponentService.renderDynamicComponent(this.Item, TextboxComponent, this.group, Number);
|
|
5585
|
+
break;
|
|
5586
|
+
///DateTime
|
|
5587
|
+
case DataType.Date:
|
|
5588
|
+
let Date = new DatePickerOptions();
|
|
5589
|
+
Date.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5590
|
+
Date.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5591
|
+
Date.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5592
|
+
Date.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5593
|
+
Date.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5594
|
+
Date.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5595
|
+
Date.PickerType = PickerType.Calendar;
|
|
5596
|
+
Date.SelectMode = SelectMode.Single;
|
|
5597
|
+
Date.StartView = StartView.Month;
|
|
5598
|
+
this.renderComponentService.renderDynamicComponent(this.Item, DateInputComponent, this.group, Date);
|
|
5599
|
+
break;
|
|
5600
|
+
case DataType.DateTime:
|
|
5601
|
+
let DateTime = new DatePickerOptions();
|
|
5602
|
+
DateTime.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5603
|
+
DateTime.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5604
|
+
DateTime.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5605
|
+
DateTime.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5606
|
+
DateTime.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5607
|
+
DateTime.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5608
|
+
DateTime.PickerType = PickerType.Both;
|
|
5609
|
+
DateTime.SelectMode = SelectMode.Single;
|
|
5610
|
+
DateTime.StartView = StartView.Month;
|
|
5611
|
+
this.renderComponentService.renderDynamicComponent(this.Item, DateInputComponent, this.group, DateTime);
|
|
5612
|
+
break;
|
|
5613
|
+
case DataType.Time:
|
|
5614
|
+
let Time = new DatePickerOptions();
|
|
5615
|
+
Time.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5616
|
+
Time.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5617
|
+
Time.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5618
|
+
Time.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5619
|
+
Time.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5620
|
+
Time.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5621
|
+
Time.PickerType = PickerType.Timer;
|
|
5622
|
+
Time.SelectMode = SelectMode.Single;
|
|
5623
|
+
Time.StartView = StartView.Month;
|
|
5624
|
+
this.renderComponentService.renderDynamicComponent(this.Item, DateInputComponent, this.group, Time);
|
|
5625
|
+
break;
|
|
5626
|
+
//Dropdown
|
|
5627
|
+
case DataType.SingleSelect:
|
|
5628
|
+
let SingleSelect = new DropdownOptions();
|
|
5629
|
+
SingleSelect.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5630
|
+
SingleSelect.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5631
|
+
SingleSelect.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5632
|
+
SingleSelect.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5633
|
+
SingleSelect.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5634
|
+
SingleSelect.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5635
|
+
SingleSelect.DataSource = this.RepeaterField.ControlOptions.dataSource;
|
|
5636
|
+
SingleSelect.SingleSelection = true;
|
|
5637
|
+
SingleSelect.ShowCheckbox = false;
|
|
5638
|
+
SingleSelect.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
|
|
5639
|
+
this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, SingleSelect);
|
|
5640
|
+
break;
|
|
5641
|
+
case DataType.MulipleSelect:
|
|
5642
|
+
let MulipleSelect = new DropdownOptions();
|
|
5643
|
+
MulipleSelect.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5644
|
+
MulipleSelect.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5645
|
+
MulipleSelect.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5646
|
+
MulipleSelect.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5647
|
+
MulipleSelect.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5648
|
+
MulipleSelect.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5649
|
+
MulipleSelect.DataSource = this.RepeaterField.ControlOptions.dataSource;
|
|
5650
|
+
MulipleSelect.SingleSelection = false;
|
|
5651
|
+
MulipleSelect.ShowCheckbox = false;
|
|
5652
|
+
MulipleSelect.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
|
|
5653
|
+
this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, MulipleSelect);
|
|
5654
|
+
break;
|
|
5655
|
+
case DataType.Goal:
|
|
5656
|
+
let Goal = new DropdownOptions();
|
|
5657
|
+
Goal.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5658
|
+
Goal.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5659
|
+
Goal.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5660
|
+
Goal.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5661
|
+
Goal.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5662
|
+
Goal.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5663
|
+
Goal.DataSource = this.RepeaterField.ControlOptions.dataSource;
|
|
5664
|
+
Goal.SingleSelection = !this.RepeaterField.ControlOptions.isMultiple;
|
|
5665
|
+
Goal.ShowCheckbox = false;
|
|
5666
|
+
Goal.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
|
|
5667
|
+
this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, Goal);
|
|
5668
|
+
break;
|
|
5669
|
+
case DataType.Challenge:
|
|
5670
|
+
let Challenge = new DropdownOptions();
|
|
5671
|
+
Challenge.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5672
|
+
Challenge.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5673
|
+
Challenge.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5674
|
+
Challenge.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5675
|
+
Challenge.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5676
|
+
Challenge.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5677
|
+
Challenge.DataSource = this.RepeaterField.ControlOptions.dataSource;
|
|
5678
|
+
Challenge.DataSource = this.RepeaterField.ControlOptions.dataSource;
|
|
5679
|
+
Challenge.SingleSelection = !this.RepeaterField.ControlOptions.isMultiple;
|
|
5680
|
+
Challenge.ShowCheckbox = false;
|
|
5681
|
+
Challenge.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
|
|
5682
|
+
this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, Challenge);
|
|
5683
|
+
break;
|
|
5684
|
+
case DataType.InnovationLab:
|
|
5685
|
+
let InnovationLab = new DropdownOptions();
|
|
5686
|
+
InnovationLab.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5687
|
+
InnovationLab.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5688
|
+
InnovationLab.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5689
|
+
InnovationLab.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5690
|
+
InnovationLab.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5691
|
+
InnovationLab.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5692
|
+
InnovationLab.DataSource = this.RepeaterField.ControlOptions.dataSource;
|
|
5693
|
+
InnovationLab.SingleSelection = !this.RepeaterField.ControlOptions.isMultiple;
|
|
5694
|
+
InnovationLab.ShowCheckbox = false;
|
|
5695
|
+
InnovationLab.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
|
|
5696
|
+
this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, InnovationLab);
|
|
5697
|
+
break;
|
|
5698
|
+
case DataType.Country:
|
|
5699
|
+
let Country = new DropdownOptions();
|
|
5700
|
+
Country.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5701
|
+
Country.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5702
|
+
Country.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5703
|
+
Country.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5704
|
+
Country.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5705
|
+
Country.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5706
|
+
Country.DataSource = this.RepeaterField.ControlOptions.dataSource;
|
|
5707
|
+
Country.SingleSelection = !this.RepeaterField.ControlOptions.isMultiple;
|
|
5708
|
+
Country.ShowCheckbox = false;
|
|
5709
|
+
Country.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
|
|
5710
|
+
this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, Country);
|
|
5711
|
+
break;
|
|
5712
|
+
//FileUpload
|
|
5713
|
+
case DataType.File:
|
|
5714
|
+
let File = new FileUploadOptions();
|
|
5715
|
+
File.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5716
|
+
File.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5717
|
+
File.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5718
|
+
File.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5719
|
+
File.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5720
|
+
File.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5721
|
+
File.FileMaxSizeInMB = this.RepeaterField.ControlOptions.maxFileSizeInMB;
|
|
5722
|
+
this.renderComponentService.renderDynamicComponent(this.Item, FileUploadComponent, this.group, File);
|
|
5723
|
+
break;
|
|
5724
|
+
case DataType.MultiFile:
|
|
5725
|
+
let MultiFile = new FileUploadOptions();
|
|
5726
|
+
File.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5727
|
+
File.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5728
|
+
File.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5729
|
+
File.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5730
|
+
File.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5731
|
+
File.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5732
|
+
MultiFile.MaxSizeForAllFilesInMB = this.RepeaterField.ControlOptions.maxFileSizeInMB;
|
|
5733
|
+
MultiFile.MaxNoOfFiles = this.RepeaterField.ControlOptions.maxFileCount;
|
|
5734
|
+
MultiFile.IsMultipleFile = true;
|
|
5735
|
+
this.renderComponentService.renderDynamicComponent(this.Item, FileUploadComponent, this.group, MultiFile);
|
|
5736
|
+
break;
|
|
5737
|
+
//ImageUpload
|
|
5738
|
+
case DataType.Image:
|
|
5739
|
+
let Image = new ImageUploadOptions();
|
|
5740
|
+
Image.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5741
|
+
Image.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5742
|
+
Image.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5743
|
+
Image.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5744
|
+
Image.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5745
|
+
Image.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5746
|
+
if (this.RepeaterField.ControlOptions.maxFileSizeInMB)
|
|
5747
|
+
Image.FileMaxSizeInMB = this.RepeaterField.ControlOptions.maxFileSizeInMB;
|
|
5748
|
+
this.renderComponentService.renderDynamicComponent(this.Item, ImageUploaderComponent, this.group, Image);
|
|
5749
|
+
break;
|
|
5750
|
+
case DataType.CoverPhoto:
|
|
5751
|
+
let CoverPhoto = new ImageUploadOptions();
|
|
5752
|
+
CoverPhoto.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5753
|
+
CoverPhoto.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5754
|
+
CoverPhoto.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5755
|
+
CoverPhoto.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5756
|
+
CoverPhoto.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5757
|
+
CoverPhoto.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5758
|
+
if (this.RepeaterField.ControlOptions.maxFileSizeInMB)
|
|
5759
|
+
CoverPhoto.FileMaxSizeInMB = this.RepeaterField.ControlOptions.maxFileSizeInMB;
|
|
5760
|
+
this.renderComponentService.renderDynamicComponent(this.Item, ImageUploaderComponent, this.group, CoverPhoto);
|
|
5761
|
+
break;
|
|
5762
|
+
//Mobile
|
|
5763
|
+
case DataType.Mobile:
|
|
5764
|
+
let Mobile = new PhoneOptions();
|
|
5765
|
+
Mobile.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5766
|
+
Mobile.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5767
|
+
Mobile.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5768
|
+
Mobile.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5769
|
+
Mobile.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5770
|
+
Mobile.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5771
|
+
Mobile.AllowSearch = true;
|
|
5772
|
+
Mobile.PhoneValidation = true;
|
|
5773
|
+
Mobile.SelectFirstCountry = true;
|
|
5774
|
+
Mobile.EnablePlaceholder = true;
|
|
5775
|
+
this.renderComponentService.renderDynamicComponent(this.Item, PhoneComponent, this.group, Mobile);
|
|
5776
|
+
break;
|
|
5777
|
+
//MultilineText
|
|
5778
|
+
case DataType.MultilineText:
|
|
5779
|
+
let MultilineText = new TextAreaOptions();
|
|
5780
|
+
MultilineText.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5781
|
+
MultilineText.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5782
|
+
MultilineText.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5783
|
+
MultilineText.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5784
|
+
MultilineText.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5785
|
+
MultilineText.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5786
|
+
if (this.RepeaterField.ControlOptions.maxLength)
|
|
5787
|
+
MultilineText.MaxLength = this.RepeaterField.ControlOptions.maxLength;
|
|
5788
|
+
if (this.RepeaterField.ControlOptions.minLength)
|
|
5789
|
+
MultilineText.MinLength = this.RepeaterField.ControlOptions.minLength;
|
|
5790
|
+
MultilineText.Rows = this.RepeaterField.ControlOptions.rows;
|
|
5791
|
+
MultilineText.ForceDirection = this.RepeaterField.ControlOptions.ForceDirection;
|
|
5792
|
+
this.renderComponentService.renderDynamicComponent(this.Item, TextAreaComponent, this.group, MultilineText);
|
|
5793
|
+
break;
|
|
5794
|
+
//HTML
|
|
5795
|
+
case DataType.HTML:
|
|
5796
|
+
let HTML = new HtmlEditorOptions();
|
|
5797
|
+
HTML.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5798
|
+
HTML.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5799
|
+
HTML.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5800
|
+
HTML.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5801
|
+
HTML.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5802
|
+
HTML.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5803
|
+
if (this.RepeaterField.ControlOptions.maxLength)
|
|
5804
|
+
HTML.MaxLength = this.RepeaterField.ControlOptions.maxLength;
|
|
5805
|
+
if (this.RepeaterField.ControlOptions.minLength)
|
|
5806
|
+
HTML.MinLength = this.RepeaterField.ControlOptions.minLength;
|
|
5807
|
+
HTML.Height = this.RepeaterField.ControlOptions.rows;
|
|
5808
|
+
HTML.ForceDirection = this.RepeaterField.ControlOptions.ForceDirection;
|
|
5809
|
+
this.renderComponentService.renderDynamicComponent(this.Item, HtmlEditorComponent, this.group, HTML);
|
|
5810
|
+
break;
|
|
5811
|
+
//Boolean
|
|
5812
|
+
case DataType.Boolean:
|
|
5813
|
+
let Boolean = new ToggleSlideOptions();
|
|
5814
|
+
Boolean.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5815
|
+
Boolean.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5816
|
+
Boolean.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5817
|
+
Boolean.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5818
|
+
Boolean.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5819
|
+
this.renderComponentService.renderDynamicComponent(this.Item, ToggleslideComponent, this.group, Boolean);
|
|
5820
|
+
break;
|
|
5821
|
+
//Location
|
|
5822
|
+
case DataType.Location:
|
|
5823
|
+
let Location = new MapAutoCompleteOptions();
|
|
5824
|
+
Location.Name = this.RepeaterField.ControlOptions.Name + "." + this.itemNumber.toString() + "." + this.controlNumber.toString();
|
|
5825
|
+
Location.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5826
|
+
Location.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5827
|
+
Location.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5828
|
+
Location.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5829
|
+
Location.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5830
|
+
this.renderComponentService.renderDynamicComponent(this.Item, MapAutoCompleteComponent, this.group, Location);
|
|
5831
|
+
break;
|
|
5832
|
+
default:
|
|
5833
|
+
break;
|
|
5834
|
+
}
|
|
5835
|
+
}, 0);
|
|
5836
|
+
}
|
|
5837
|
+
ngOnChanges(changes) {
|
|
5838
|
+
if (changes.itemNumber.previousValue) {
|
|
5839
|
+
let name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.previousValue.toString() + "." + this.controlNumber.toString();
|
|
5840
|
+
let value = this.group.controls[name].value;
|
|
5841
|
+
this.Item.clear();
|
|
5842
|
+
this.group.removeControl(name);
|
|
5843
|
+
switch (this.RepeaterField.ControlType) {
|
|
5844
|
+
///TextBox
|
|
5845
|
+
case DataType.Text:
|
|
5846
|
+
let Text = new TextBoxOptions();
|
|
5847
|
+
Text.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
5848
|
+
Text.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5849
|
+
Text.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5850
|
+
Text.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5851
|
+
Text.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5852
|
+
Text.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5853
|
+
Text.Type = InputType.Text;
|
|
5854
|
+
if (this.RepeaterField.ControlOptions.maxLength)
|
|
5855
|
+
Text.MaxLength = this.RepeaterField.ControlOptions.maxLength;
|
|
5856
|
+
if (this.RepeaterField.ControlOptions.minLength)
|
|
5857
|
+
Text.MinLength = this.RepeaterField.ControlOptions.minLength;
|
|
5858
|
+
Text.Value = value;
|
|
5859
|
+
this.renderComponentService.renderDynamicComponent(this.Item, TextboxComponent, this.group, Text);
|
|
5860
|
+
break;
|
|
5861
|
+
case DataType.Name:
|
|
5862
|
+
let Name = new TextBoxOptions();
|
|
5863
|
+
Name.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
5864
|
+
Name.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5865
|
+
Name.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5866
|
+
Name.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5867
|
+
Name.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5868
|
+
Name.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5869
|
+
if (this.RepeaterField.ControlOptions.maxLength)
|
|
5870
|
+
Name.MaxLength = this.RepeaterField.ControlOptions.maxLength;
|
|
5871
|
+
if (this.RepeaterField.ControlOptions.minLength)
|
|
5872
|
+
Name.MinLength = this.RepeaterField.ControlOptions.minLength;
|
|
5873
|
+
Name.Type = InputType.Text;
|
|
5874
|
+
Name.Value = value;
|
|
5875
|
+
this.renderComponentService.renderDynamicComponent(this.Item, TextboxComponent, this.group, Name);
|
|
5876
|
+
break;
|
|
5877
|
+
case DataType.Email:
|
|
5878
|
+
let Email = new TextBoxOptions();
|
|
5879
|
+
Email.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
5880
|
+
Email.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5881
|
+
Email.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5882
|
+
Email.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5883
|
+
Email.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5884
|
+
Email.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5885
|
+
Email.Type = InputType.Email;
|
|
5886
|
+
Email.Value = value;
|
|
5887
|
+
this.renderComponentService.renderDynamicComponent(this.Item, TextboxComponent, this.group, Email);
|
|
5888
|
+
break;
|
|
5889
|
+
case DataType.Number:
|
|
5890
|
+
let Number = new TextBoxOptions();
|
|
5891
|
+
Number.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
5892
|
+
Number.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5893
|
+
Number.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5894
|
+
Number.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5895
|
+
Number.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5896
|
+
Number.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5897
|
+
Number.Type = InputType.Number;
|
|
5898
|
+
let rangeNumber = new RangeNumber();
|
|
5899
|
+
rangeNumber.To = this.RepeaterField.ControlOptions.maxLength;
|
|
5900
|
+
rangeNumber.From = this.RepeaterField.ControlOptions.minLength;
|
|
5901
|
+
Number.NumberRange = rangeNumber;
|
|
5902
|
+
Number.Value = value;
|
|
5903
|
+
this.renderComponentService.renderDynamicComponent(this.Item, TextboxComponent, this.group, Number);
|
|
5904
|
+
break;
|
|
5905
|
+
///DateTime
|
|
5906
|
+
case DataType.Date:
|
|
5907
|
+
let Date = new DatePickerOptions();
|
|
5908
|
+
Date.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
5909
|
+
Date.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5910
|
+
Date.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5911
|
+
Date.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5912
|
+
Date.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5913
|
+
Date.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5914
|
+
Date.PickerType = PickerType.Calendar;
|
|
5915
|
+
Date.SelectMode = SelectMode.Single;
|
|
5916
|
+
Date.StartView = StartView.Month;
|
|
5917
|
+
Date.Value = value;
|
|
5918
|
+
this.renderComponentService.renderDynamicComponent(this.Item, DateInputComponent, this.group, Date);
|
|
5919
|
+
break;
|
|
5920
|
+
case DataType.DateTime:
|
|
5921
|
+
let DateTime = new DatePickerOptions();
|
|
5922
|
+
DateTime.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
5923
|
+
DateTime.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5924
|
+
DateTime.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5925
|
+
DateTime.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5926
|
+
DateTime.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5927
|
+
DateTime.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5928
|
+
DateTime.PickerType = PickerType.Both;
|
|
5929
|
+
DateTime.SelectMode = SelectMode.Single;
|
|
5930
|
+
DateTime.StartView = StartView.Month;
|
|
5931
|
+
DateTime.Value = value;
|
|
5932
|
+
this.renderComponentService.renderDynamicComponent(this.Item, DateInputComponent, this.group, DateTime);
|
|
5933
|
+
break;
|
|
5934
|
+
case DataType.Time:
|
|
5935
|
+
let Time = new DatePickerOptions();
|
|
5936
|
+
Time.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
5937
|
+
Time.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5938
|
+
Time.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5939
|
+
Time.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5940
|
+
Time.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5941
|
+
Time.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5942
|
+
Time.PickerType = PickerType.Timer;
|
|
5943
|
+
Time.SelectMode = SelectMode.Single;
|
|
5944
|
+
Time.StartView = StartView.Month;
|
|
5945
|
+
Time.Value = value;
|
|
5946
|
+
this.renderComponentService.renderDynamicComponent(this.Item, DateInputComponent, this.group, Time);
|
|
5947
|
+
break;
|
|
5948
|
+
//Dropdown
|
|
5949
|
+
case DataType.SingleSelect:
|
|
5950
|
+
let SingleSelect = new DropdownOptions();
|
|
5951
|
+
SingleSelect.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
5952
|
+
SingleSelect.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5953
|
+
SingleSelect.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5954
|
+
SingleSelect.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5955
|
+
SingleSelect.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5956
|
+
SingleSelect.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5957
|
+
SingleSelect.DataSource = this.RepeaterField.ControlOptions.dataSource;
|
|
5958
|
+
SingleSelect.SingleSelection = true;
|
|
5959
|
+
SingleSelect.ShowCheckbox = false;
|
|
5960
|
+
SingleSelect.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
|
|
5961
|
+
SingleSelect.SelectedItems = value;
|
|
5962
|
+
this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, SingleSelect);
|
|
5963
|
+
break;
|
|
5964
|
+
case DataType.MulipleSelect:
|
|
5965
|
+
let MulipleSelect = new DropdownOptions();
|
|
5966
|
+
MulipleSelect.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
5967
|
+
MulipleSelect.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5968
|
+
MulipleSelect.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5969
|
+
MulipleSelect.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5970
|
+
MulipleSelect.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5971
|
+
MulipleSelect.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5972
|
+
MulipleSelect.DataSource = this.RepeaterField.ControlOptions.dataSource;
|
|
5973
|
+
MulipleSelect.SingleSelection = false;
|
|
5974
|
+
MulipleSelect.ShowCheckbox = false;
|
|
5975
|
+
MulipleSelect.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
|
|
5976
|
+
MulipleSelect.SelectedItems = value;
|
|
5977
|
+
this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, MulipleSelect);
|
|
5978
|
+
break;
|
|
5979
|
+
case DataType.Goal:
|
|
5980
|
+
let Goal = new DropdownOptions();
|
|
5981
|
+
Goal.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
5982
|
+
Goal.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5983
|
+
Goal.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5984
|
+
Goal.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
5985
|
+
Goal.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
5986
|
+
Goal.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
5987
|
+
Goal.DataSource = this.RepeaterField.ControlOptions.dataSource;
|
|
5988
|
+
Goal.SingleSelection = !this.RepeaterField.ControlOptions.isMultiple;
|
|
5989
|
+
Goal.ShowCheckbox = false;
|
|
5990
|
+
Goal.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
|
|
5991
|
+
Goal.SelectedItems = value;
|
|
5992
|
+
this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, Goal);
|
|
5993
|
+
break;
|
|
5994
|
+
case DataType.Challenge:
|
|
5995
|
+
let Challenge = new DropdownOptions();
|
|
5996
|
+
Challenge.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
5997
|
+
Challenge.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
5998
|
+
Challenge.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
5999
|
+
Challenge.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
6000
|
+
Challenge.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
6001
|
+
Challenge.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
6002
|
+
Challenge.DataSource = this.RepeaterField.ControlOptions.dataSource;
|
|
6003
|
+
Challenge.DataSource = this.RepeaterField.ControlOptions.dataSource;
|
|
6004
|
+
Challenge.SingleSelection = !this.RepeaterField.ControlOptions.isMultiple;
|
|
6005
|
+
Challenge.ShowCheckbox = false;
|
|
6006
|
+
Challenge.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
|
|
6007
|
+
Challenge.SelectedItems = value;
|
|
6008
|
+
this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, Challenge);
|
|
6009
|
+
break;
|
|
6010
|
+
case DataType.InnovationLab:
|
|
6011
|
+
let InnovationLab = new DropdownOptions();
|
|
6012
|
+
InnovationLab.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
6013
|
+
InnovationLab.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
6014
|
+
InnovationLab.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
6015
|
+
InnovationLab.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
6016
|
+
InnovationLab.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
6017
|
+
InnovationLab.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
6018
|
+
InnovationLab.DataSource = this.RepeaterField.ControlOptions.dataSource;
|
|
6019
|
+
InnovationLab.SingleSelection = !this.RepeaterField.ControlOptions.isMultiple;
|
|
6020
|
+
InnovationLab.ShowCheckbox = false;
|
|
6021
|
+
InnovationLab.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
|
|
6022
|
+
InnovationLab.SelectedItems = value;
|
|
6023
|
+
this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, InnovationLab);
|
|
6024
|
+
break;
|
|
6025
|
+
case DataType.Country:
|
|
6026
|
+
let Country = new DropdownOptions();
|
|
6027
|
+
Country.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
6028
|
+
Country.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
6029
|
+
Country.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
6030
|
+
Country.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
6031
|
+
Country.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
6032
|
+
Country.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
6033
|
+
Country.DataSource = this.RepeaterField.ControlOptions.dataSource;
|
|
6034
|
+
Country.SingleSelection = !this.RepeaterField.ControlOptions.isMultiple;
|
|
6035
|
+
Country.ShowCheckbox = false;
|
|
6036
|
+
Country.AllowSearchFilter = this.RepeaterField.ControlOptions.hasSearch;
|
|
6037
|
+
Country.SelectedItems = value;
|
|
6038
|
+
this.renderComponentService.renderDynamicComponent(this.Item, DropdownListComponent, this.group, Country);
|
|
6039
|
+
break;
|
|
6040
|
+
//FileUpload
|
|
6041
|
+
case DataType.File:
|
|
6042
|
+
let File = new FileUploadOptions();
|
|
6043
|
+
File.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
6044
|
+
File.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
6045
|
+
File.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
6046
|
+
File.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
6047
|
+
File.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
6048
|
+
File.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
6049
|
+
File.FileMaxSizeInMB = this.RepeaterField.ControlOptions.maxFileSizeInMB;
|
|
6050
|
+
File.Value = value;
|
|
6051
|
+
this.renderComponentService.renderDynamicComponent(this.Item, FileUploadComponent, this.group, File);
|
|
6052
|
+
break;
|
|
6053
|
+
case DataType.MultiFile:
|
|
6054
|
+
let MultiFile = new FileUploadOptions();
|
|
6055
|
+
File.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
6056
|
+
File.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
6057
|
+
File.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
6058
|
+
File.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
6059
|
+
File.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
6060
|
+
File.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
6061
|
+
MultiFile.MaxSizeForAllFilesInMB = this.RepeaterField.ControlOptions.maxFileSizeInMB;
|
|
6062
|
+
MultiFile.MaxNoOfFiles = this.RepeaterField.ControlOptions.maxFileCount;
|
|
6063
|
+
MultiFile.IsMultipleFile = true;
|
|
6064
|
+
MultiFile.Value = value;
|
|
6065
|
+
this.renderComponentService.renderDynamicComponent(this.Item, FileUploadComponent, this.group, MultiFile);
|
|
6066
|
+
break;
|
|
6067
|
+
//ImageUpload
|
|
6068
|
+
case DataType.Image:
|
|
6069
|
+
let Image = new ImageUploadOptions();
|
|
6070
|
+
Image.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
6071
|
+
Image.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
6072
|
+
Image.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
6073
|
+
Image.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
6074
|
+
Image.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
6075
|
+
Image.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
6076
|
+
if (this.RepeaterField.ControlOptions.maxFileSizeInMB)
|
|
6077
|
+
Image.FileMaxSizeInMB = this.RepeaterField.ControlOptions.maxFileSizeInMB;
|
|
6078
|
+
Image.Value = value;
|
|
6079
|
+
this.renderComponentService.renderDynamicComponent(this.Item, ImageUploaderComponent, this.group, Image);
|
|
6080
|
+
break;
|
|
6081
|
+
case DataType.CoverPhoto:
|
|
6082
|
+
let CoverPhoto = new ImageUploadOptions();
|
|
6083
|
+
CoverPhoto.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
6084
|
+
CoverPhoto.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
6085
|
+
CoverPhoto.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
6086
|
+
CoverPhoto.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
6087
|
+
CoverPhoto.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
6088
|
+
CoverPhoto.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
6089
|
+
if (this.RepeaterField.ControlOptions.maxFileSizeInMB)
|
|
6090
|
+
CoverPhoto.FileMaxSizeInMB = this.RepeaterField.ControlOptions.maxFileSizeInMB;
|
|
6091
|
+
CoverPhoto.Value = value;
|
|
6092
|
+
this.renderComponentService.renderDynamicComponent(this.Item, ImageUploaderComponent, this.group, CoverPhoto);
|
|
6093
|
+
break;
|
|
6094
|
+
//Mobile
|
|
6095
|
+
case DataType.Mobile:
|
|
6096
|
+
let Mobile = new PhoneOptions();
|
|
6097
|
+
Mobile.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
6098
|
+
Mobile.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
6099
|
+
Mobile.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
6100
|
+
Mobile.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
6101
|
+
Mobile.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
6102
|
+
Mobile.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
6103
|
+
Mobile.AllowSearch = true;
|
|
6104
|
+
Mobile.PhoneValidation = true;
|
|
6105
|
+
Mobile.SelectFirstCountry = true;
|
|
6106
|
+
Mobile.EnablePlaceholder = true;
|
|
6107
|
+
Mobile.Value = value;
|
|
6108
|
+
this.renderComponentService.renderDynamicComponent(this.Item, PhoneComponent, this.group, Mobile);
|
|
6109
|
+
break;
|
|
6110
|
+
//MultilineText
|
|
6111
|
+
case DataType.MultilineText:
|
|
6112
|
+
let MultilineText = new TextAreaOptions();
|
|
6113
|
+
MultilineText.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
6114
|
+
MultilineText.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
6115
|
+
MultilineText.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
6116
|
+
MultilineText.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
6117
|
+
MultilineText.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
6118
|
+
MultilineText.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
6119
|
+
if (this.RepeaterField.ControlOptions.maxLength)
|
|
6120
|
+
MultilineText.MaxLength = this.RepeaterField.ControlOptions.maxLength;
|
|
6121
|
+
if (this.RepeaterField.ControlOptions.minLength)
|
|
6122
|
+
MultilineText.MinLength = this.RepeaterField.ControlOptions.minLength;
|
|
6123
|
+
MultilineText.Rows = this.RepeaterField.ControlOptions.rows;
|
|
6124
|
+
MultilineText.ForceDirection = this.RepeaterField.ControlOptions.ForceDirection;
|
|
6125
|
+
MultilineText.Value = value;
|
|
6126
|
+
this.renderComponentService.renderDynamicComponent(this.Item, TextAreaComponent, this.group, MultilineText);
|
|
6127
|
+
break;
|
|
6128
|
+
//HTML
|
|
6129
|
+
case DataType.HTML:
|
|
6130
|
+
let HTML = new HtmlEditorOptions();
|
|
6131
|
+
HTML.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
6132
|
+
HTML.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
6133
|
+
HTML.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
6134
|
+
HTML.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
6135
|
+
HTML.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
6136
|
+
HTML.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
6137
|
+
if (this.RepeaterField.ControlOptions.maxLength)
|
|
6138
|
+
HTML.MaxLength = this.RepeaterField.ControlOptions.maxLength;
|
|
6139
|
+
if (this.RepeaterField.ControlOptions.minLength)
|
|
6140
|
+
HTML.MinLength = this.RepeaterField.ControlOptions.minLength;
|
|
6141
|
+
HTML.Height = this.RepeaterField.ControlOptions.rows;
|
|
6142
|
+
HTML.ForceDirection = this.RepeaterField.ControlOptions.ForceDirection;
|
|
6143
|
+
HTML.Value = value;
|
|
6144
|
+
this.renderComponentService.renderDynamicComponent(this.Item, HtmlEditorComponent, this.group, HTML);
|
|
6145
|
+
break;
|
|
6146
|
+
//Boolean
|
|
6147
|
+
case DataType.Boolean:
|
|
6148
|
+
let Boolean = new ToggleSlideOptions();
|
|
6149
|
+
Boolean.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
6150
|
+
Boolean.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
6151
|
+
Boolean.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
6152
|
+
Boolean.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
6153
|
+
Boolean.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
6154
|
+
Boolean.Value = value;
|
|
6155
|
+
this.renderComponentService.renderDynamicComponent(this.Item, ToggleslideComponent, this.group, Boolean);
|
|
6156
|
+
break;
|
|
6157
|
+
//Location
|
|
6158
|
+
case DataType.Location:
|
|
6159
|
+
let Location = new MapAutoCompleteOptions();
|
|
6160
|
+
Location.Name = this.RepeaterField.ControlOptions.Name + "." + changes.itemNumber.currentValue + "." + this.controlNumber.toString();
|
|
6161
|
+
Location.HideLabel = this.RepeaterField.ControlOptions.HideLabel;
|
|
6162
|
+
Location.LabelKey = this.RepeaterField.ControlOptions.LabelKey;
|
|
6163
|
+
Location.IsRequired = this.RepeaterField.ControlOptions.IsRequired;
|
|
6164
|
+
Location.ViewType = this.RepeaterField.ControlOptions.ViewType;
|
|
6165
|
+
Location.LabelDescription = this.RepeaterField.ControlOptions.LabelDescription ? this.RepeaterField.ControlOptions.LabelDescription : "";
|
|
6166
|
+
Location.Value = value;
|
|
6167
|
+
this.renderComponentService.renderDynamicComponent(this.Item, MapAutoCompleteComponent, this.group, Location);
|
|
6168
|
+
break;
|
|
6169
|
+
default:
|
|
6170
|
+
break;
|
|
6171
|
+
}
|
|
6172
|
+
}
|
|
6173
|
+
}
|
|
6174
|
+
}
|
|
6175
|
+
RepeaterFieldBuilderComponent.decorators = [
|
|
6176
|
+
{ type: Component, args: [{
|
|
6177
|
+
selector: 'repeater-field-builder',
|
|
6178
|
+
template: "<ng-container #Item></ng-container>\r\n"
|
|
6179
|
+
},] }
|
|
6180
|
+
];
|
|
6181
|
+
RepeaterFieldBuilderComponent.ctorParameters = () => [
|
|
6182
|
+
{ type: RenderComponentService },
|
|
6183
|
+
{ type: FormGroupDirective }
|
|
6184
|
+
];
|
|
6185
|
+
RepeaterFieldBuilderComponent.propDecorators = {
|
|
6186
|
+
Item: [{ type: ViewChild, args: ["Item", { read: ViewContainerRef },] }],
|
|
6187
|
+
group: [{ type: Input }],
|
|
6188
|
+
itemNumber: [{ type: Input }],
|
|
6189
|
+
controlNumber: [{ type: Input }],
|
|
6190
|
+
RepeaterField: [{ type: Input }]
|
|
6191
|
+
};
|
|
6192
|
+
|
|
6193
|
+
class RepeaterItemFieldComponent {
|
|
6194
|
+
constructor() { }
|
|
6195
|
+
ngOnInit() {
|
|
6196
|
+
}
|
|
6197
|
+
}
|
|
6198
|
+
RepeaterItemFieldComponent.decorators = [
|
|
6199
|
+
{ type: Component, args: [{
|
|
6200
|
+
selector: 'repeater-item-field',
|
|
6201
|
+
template: "<ng-container *ngFor=\"let template of templates ; index as i\">\r\n <ng-container *ngIf=\"i==filedIndex\" [ngTemplateOutlet]=\"template\" [ngTemplateOutletContext] ={itemIndex:itemIndex,controlIndex:i}></ng-container>\r\n </ng-container>",
|
|
6202
|
+
styles: [""]
|
|
6203
|
+
},] }
|
|
6204
|
+
];
|
|
6205
|
+
RepeaterItemFieldComponent.ctorParameters = () => [];
|
|
6206
|
+
RepeaterItemFieldComponent.propDecorators = {
|
|
6207
|
+
templates: [{ type: Input }],
|
|
6208
|
+
filedIndex: [{ type: Input }],
|
|
6209
|
+
itemIndex: [{ type: Input }]
|
|
6210
|
+
};
|
|
6211
|
+
|
|
5151
6212
|
let options;
|
|
5152
6213
|
let AppInjector;
|
|
5153
6214
|
FullCalendarModule.registerPlugins([
|
|
@@ -5190,7 +6251,11 @@ BBSFControlsModule.decorators = [
|
|
|
5190
6251
|
JwPaginationComponent,
|
|
5191
6252
|
RadioButtonComponent,
|
|
5192
6253
|
FormComponent,
|
|
5193
|
-
ConfirmationModalComponent
|
|
6254
|
+
ConfirmationModalComponent,
|
|
6255
|
+
RepeaterComponent,
|
|
6256
|
+
RepeaterFieldBuilderComponent,
|
|
6257
|
+
NgTemplateNameDirective,
|
|
6258
|
+
RepeaterItemFieldComponent,
|
|
5194
6259
|
],
|
|
5195
6260
|
imports: [
|
|
5196
6261
|
CommonModule,
|
|
@@ -5245,17 +6310,12 @@ BBSFControlsModule.decorators = [
|
|
|
5245
6310
|
ErrorMassageValidation,
|
|
5246
6311
|
ControlUtility,
|
|
5247
6312
|
OnPagingFiltersChangeService,
|
|
5248
|
-
// EnvironmentService,
|
|
5249
|
-
// AuthService,
|
|
5250
|
-
// RequestHandlerService,
|
|
5251
|
-
// UtilityService,
|
|
5252
6313
|
TranslateService,
|
|
5253
|
-
// BBSFTranslateService,
|
|
5254
|
-
// ControlValidationService,
|
|
5255
6314
|
FormGroupDirective,
|
|
5256
6315
|
NgbModal,
|
|
5257
6316
|
NgbActiveModal,
|
|
5258
6317
|
DatePipe,
|
|
6318
|
+
RenderComponentService,
|
|
5259
6319
|
{ provide: OWL_DATE_TIME_LOCALE, useValue: ɵ0 },
|
|
5260
6320
|
],
|
|
5261
6321
|
schemas: [
|
|
@@ -5285,7 +6345,11 @@ BBSFControlsModule.decorators = [
|
|
|
5285
6345
|
RadioButtonComponent,
|
|
5286
6346
|
FormComponent,
|
|
5287
6347
|
PagingComponent,
|
|
5288
|
-
ConfirmationModalComponent
|
|
6348
|
+
ConfirmationModalComponent,
|
|
6349
|
+
RepeaterComponent,
|
|
6350
|
+
RepeaterFieldBuilderComponent,
|
|
6351
|
+
NgTemplateNameDirective,
|
|
6352
|
+
RepeaterItemFieldComponent,
|
|
5289
6353
|
]
|
|
5290
6354
|
},] }
|
|
5291
6355
|
];
|
|
@@ -5320,75 +6384,6 @@ class CustomValidator {
|
|
|
5320
6384
|
}
|
|
5321
6385
|
}
|
|
5322
6386
|
|
|
5323
|
-
var ForceDirection;
|
|
5324
|
-
(function (ForceDirection) {
|
|
5325
|
-
ForceDirection[ForceDirection["English"] = 1] = "English";
|
|
5326
|
-
ForceDirection[ForceDirection["Arabic"] = 2] = "Arabic";
|
|
5327
|
-
})(ForceDirection || (ForceDirection = {}));
|
|
5328
|
-
|
|
5329
|
-
class DatePickerOptions {
|
|
5330
|
-
constructor() {
|
|
5331
|
-
/** to set type of view if DatePicker is Vertical or Horizontal */
|
|
5332
|
-
this.ViewType = ControlLayout.Vertical;
|
|
5333
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5334
|
-
*/
|
|
5335
|
-
this.CustomValidation = [];
|
|
5336
|
-
/**To set First Day Of Week to DatePicker */
|
|
5337
|
-
this.FirstDayOfWeek = 1;
|
|
5338
|
-
/**To set PickerType to DatePicker is Calendar or Timer Or Both */
|
|
5339
|
-
this.PickerType = PickerType.Calendar;
|
|
5340
|
-
/**To set StartView to DatePicker is Year or Month Or Multi-Year */
|
|
5341
|
-
this.StartView = StartView.Month;
|
|
5342
|
-
/**To set SelectMode to DatePicker is Single or Range */
|
|
5343
|
-
this.SelectMode = SelectMode.Single;
|
|
5344
|
-
this.ForceDirection = ForceDirection.English;
|
|
5345
|
-
}
|
|
5346
|
-
}
|
|
5347
|
-
|
|
5348
|
-
class RangeNumber {
|
|
5349
|
-
}
|
|
5350
|
-
|
|
5351
|
-
var IconPosition;
|
|
5352
|
-
(function (IconPosition) {
|
|
5353
|
-
IconPosition[IconPosition["left"] = 1] = "left";
|
|
5354
|
-
IconPosition[IconPosition["right"] = 2] = "right";
|
|
5355
|
-
})(IconPosition || (IconPosition = {}));
|
|
5356
|
-
|
|
5357
|
-
class TextBoxOptions {
|
|
5358
|
-
constructor() {
|
|
5359
|
-
/** set Range Number to Textbox with type number with From-Value and To-value*/
|
|
5360
|
-
this.NumberRange = new RangeNumber();
|
|
5361
|
-
/**Prevent AutoComplete of textbox*/
|
|
5362
|
-
this.AutoComplete = "off";
|
|
5363
|
-
/** to set type of view if textbox is Vertical or Horizontal */
|
|
5364
|
-
this.ViewType = null;
|
|
5365
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5366
|
-
*/
|
|
5367
|
-
this.CustomValidation = [];
|
|
5368
|
-
/** to set Direction of textbox if textbox is Arabic or English */
|
|
5369
|
-
this.ForceDirection = null;
|
|
5370
|
-
/** Set Type of TextBox ("text","password","email","number") */
|
|
5371
|
-
this.Type = InputType.Text;
|
|
5372
|
-
this.IconPosition = IconPosition.left;
|
|
5373
|
-
this.NoMargin = false;
|
|
5374
|
-
this.ValidationRules = [];
|
|
5375
|
-
}
|
|
5376
|
-
}
|
|
5377
|
-
|
|
5378
|
-
class FileUploadOptions {
|
|
5379
|
-
constructor() {
|
|
5380
|
-
/** Ability to set FileInput required */
|
|
5381
|
-
this.IsMultipleFile = false;
|
|
5382
|
-
/** Sets boolean Value to Show IsDropZone Or Not */
|
|
5383
|
-
this.IsDropZone = false;
|
|
5384
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5385
|
-
*/
|
|
5386
|
-
this.CustomValidation = [];
|
|
5387
|
-
/** to set type of view if textbox is Vertical or Horizontal */
|
|
5388
|
-
this.ViewType = null;
|
|
5389
|
-
}
|
|
5390
|
-
}
|
|
5391
|
-
|
|
5392
6387
|
class MultiLingualTextBoxOptions {
|
|
5393
6388
|
constructor() {
|
|
5394
6389
|
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
@@ -5410,18 +6405,6 @@ class MultiLingualTextBoxOptions {
|
|
|
5410
6405
|
class Attribute {
|
|
5411
6406
|
}
|
|
5412
6407
|
|
|
5413
|
-
class TextAreaOptions {
|
|
5414
|
-
constructor() {
|
|
5415
|
-
/** to set type of view if TextArea is Vertical or Horizontal */
|
|
5416
|
-
this.ViewType = null;
|
|
5417
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5418
|
-
*/
|
|
5419
|
-
this.CustomValidation = [];
|
|
5420
|
-
/** to set Direction of TextArea if TextArea is Arabic or English */
|
|
5421
|
-
this.ForceDirection = ForceDirection.English;
|
|
5422
|
-
}
|
|
5423
|
-
}
|
|
5424
|
-
|
|
5425
6408
|
class MultiLingualTextAreaOptions {
|
|
5426
6409
|
constructor() {
|
|
5427
6410
|
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
@@ -5452,60 +6435,6 @@ class CheckBoxOptions {
|
|
|
5452
6435
|
class DropdownListItem {
|
|
5453
6436
|
}
|
|
5454
6437
|
|
|
5455
|
-
class DropdownOptions {
|
|
5456
|
-
constructor() {
|
|
5457
|
-
/** Disable Bootstrap DropdownList */
|
|
5458
|
-
this.DisableBootstrapSelect = false;
|
|
5459
|
-
/** to set type of view if DropdownList is Vertical or Horizontal */
|
|
5460
|
-
this.ViewType = null;
|
|
5461
|
-
/** To Set Custom Validation*/
|
|
5462
|
-
this.CustomValidation = [];
|
|
5463
|
-
/** Set key for item in DropdownList */
|
|
5464
|
-
this.ItemTempletkey = "key";
|
|
5465
|
-
/** Set value for item in DropdownList */
|
|
5466
|
-
this.ItemTempletvalue = "value";
|
|
5467
|
-
this.ForceDirection = ForceDirection.English;
|
|
5468
|
-
}
|
|
5469
|
-
}
|
|
5470
|
-
|
|
5471
|
-
class PhoneOptions {
|
|
5472
|
-
constructor() {
|
|
5473
|
-
/**
|
|
5474
|
-
* Represent Css classes to Phonebox
|
|
5475
|
-
*/
|
|
5476
|
-
this.ExtraClasses = "form-control bnsights-control";
|
|
5477
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5478
|
-
*/
|
|
5479
|
-
this.CustomValidation = [];
|
|
5480
|
-
/**Set List Of Countries As Preferred Countries*/
|
|
5481
|
-
this.PreferredCountries = [];
|
|
5482
|
-
/** to set type of view if Phonebox is Vertical or Horizontal */
|
|
5483
|
-
this.ViewType = null;
|
|
5484
|
-
this.ForceDirection = ForceDirection.English;
|
|
5485
|
-
}
|
|
5486
|
-
}
|
|
5487
|
-
|
|
5488
|
-
class ToggleSlideOptions {
|
|
5489
|
-
constructor() {
|
|
5490
|
-
this.ViewType = null;
|
|
5491
|
-
this.ForceDirection = ForceDirection.English;
|
|
5492
|
-
}
|
|
5493
|
-
}
|
|
5494
|
-
|
|
5495
|
-
class HtmlEditorOptions {
|
|
5496
|
-
constructor() {
|
|
5497
|
-
/** to set type of view if textbox is Vertical or Horizontal */
|
|
5498
|
-
this.ViewType = null;
|
|
5499
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5500
|
-
*/
|
|
5501
|
-
this.CustomValidation = [];
|
|
5502
|
-
/** to set Direction of HtmlEditor if HtmlEditor is Arabic or English */
|
|
5503
|
-
this.ForceDirection = ForceDirection.English;
|
|
5504
|
-
/** Set Height For */
|
|
5505
|
-
this.Height = 150;
|
|
5506
|
-
}
|
|
5507
|
-
}
|
|
5508
|
-
|
|
5509
6438
|
class MultiLingualHtmlEditorOptions {
|
|
5510
6439
|
constructor() {
|
|
5511
6440
|
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
@@ -5522,32 +6451,6 @@ class MultiLingualHtmlEditorOptions {
|
|
|
5522
6451
|
}
|
|
5523
6452
|
}
|
|
5524
6453
|
|
|
5525
|
-
var ImageType;
|
|
5526
|
-
(function (ImageType) {
|
|
5527
|
-
ImageType["ImageTypes"] = "image/png,image/bmp,image/jpeg";
|
|
5528
|
-
ImageType["PNG"] = "image/png";
|
|
5529
|
-
ImageType["JPG"] = "image/jpeg";
|
|
5530
|
-
ImageType["JPEG"] = "image/jpeg";
|
|
5531
|
-
ImageType["SVG"] = "image/svg+xml";
|
|
5532
|
-
ImageType["None"] = "";
|
|
5533
|
-
})(ImageType || (ImageType = {}));
|
|
5534
|
-
|
|
5535
|
-
class ImageUploadOptions {
|
|
5536
|
-
constructor() {
|
|
5537
|
-
/** Allow to Upload Multiple File */
|
|
5538
|
-
this.IsMultiple = false;
|
|
5539
|
-
/** Allow to Use Drop Zone */
|
|
5540
|
-
this.AllowDropZone = false;
|
|
5541
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5542
|
-
*/
|
|
5543
|
-
this.CustomValidation = [];
|
|
5544
|
-
/** to set type of view if FileInput is Vertical or Horizontal */
|
|
5545
|
-
this.ViewType = null;
|
|
5546
|
-
/** Set List of Custom Attribute to FileInput */
|
|
5547
|
-
this.FileUploadAcceptsTypes = [ImageType.ImageTypes];
|
|
5548
|
-
}
|
|
5549
|
-
}
|
|
5550
|
-
|
|
5551
6454
|
class ProfileImageUploadOptions {
|
|
5552
6455
|
constructor() {
|
|
5553
6456
|
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
@@ -5608,16 +6511,6 @@ class CalendarOptions {
|
|
|
5608
6511
|
class CalendarEventDTO {
|
|
5609
6512
|
}
|
|
5610
6513
|
|
|
5611
|
-
class MapAutoCompleteOptions {
|
|
5612
|
-
constructor() {
|
|
5613
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5614
|
-
*/
|
|
5615
|
-
this.CustomValidation = [];
|
|
5616
|
-
/** to set type of view if MapAutoComplete is Vertical or Horizontal */
|
|
5617
|
-
this.ViewType = null;
|
|
5618
|
-
}
|
|
5619
|
-
}
|
|
5620
|
-
|
|
5621
6514
|
class AutocompleteOptions {
|
|
5622
6515
|
constructor() {
|
|
5623
6516
|
/**
|
|
@@ -5815,6 +6708,19 @@ class ConfirmationModalOptions {
|
|
|
5815
6708
|
}
|
|
5816
6709
|
}
|
|
5817
6710
|
|
|
6711
|
+
class RepeaterField {
|
|
6712
|
+
}
|
|
6713
|
+
|
|
6714
|
+
class RepeaterOptions {
|
|
6715
|
+
constructor() {
|
|
6716
|
+
this.MinRequiredItems = 1;
|
|
6717
|
+
this.AddButtonText = "Add";
|
|
6718
|
+
this.DeleteButtonText = "Delete";
|
|
6719
|
+
this.RepeaterValue = [];
|
|
6720
|
+
this.RepeaterStructure = [];
|
|
6721
|
+
}
|
|
6722
|
+
}
|
|
6723
|
+
|
|
5818
6724
|
var MenuListType;
|
|
5819
6725
|
(function (MenuListType) {
|
|
5820
6726
|
MenuListType[MenuListType["AdminType"] = 1] = "AdminType";
|
|
@@ -6138,5 +7044,5 @@ var FileType;
|
|
|
6138
7044
|
* Generated bundle index. Do not edit.
|
|
6139
7045
|
*/
|
|
6140
7046
|
|
|
6141
|
-
export { AppInjector, Attribute, AutocompleteDTO, AutocompleteOptions, AutocompleteTextBoxComponent, BBSFControlsModule, CalendarComponent, CalendarEventDTO, CalendarOptions, CalendarView, CancelDTO, CheckBoxComponent, CheckBoxOptions, ConfirmationModalComponent, ConfirmationModalOptions, ControlLayout, ControlUtility, Country, CustomValidation, CustomValidator, DateInputComponent, DatePickerOptions, DropdownListComponent, DropdownListItem, DropdownOptions, EditPersonalImage, EnglishArabicDTO, ErrorMassageValidation, FileType, FileUploadComponent, FileUploadModel, FileUploadOptions, FilterItem, FilterType, FontSize, ForceDirection, FormComponent, FormOptions, GlobalSettings, HtmlEditorComponent, HtmlEditorOptions, IconPosition, ImageType, ImageUploadOptions, ImageUploaderComponent, InputType, Insert, JwPaginationComponent, LanguageMode, MapAutoCompleteComponent, MapAutoCompleteOptions, MapAutocompleteDTO, MenuListType, Misc, MultiLingualHtmlEditorComponent, MultiLingualHtmlEditorOptions, MultiLingualTextAreaComponent, MultiLingualTextAreaOptions, MultiLingualTextBoxComponent, MultiLingualTextBoxOptions, MultipleFileUploadModel, OnPagingFiltersChangeService, PagingActionMode, PagingComponent, PagingDTO, PagingOptions, Para, PhoneComponent, PhoneOptions, PickerType, ProfileImageUploadOptions, ProfileImageUploaderComponent, ProfilePictureDTO, RadioButtonComponent, RadioButtonItem, RadioButtonOptions, RangeNumber, SaveDTO, SelectMode, StartView, Style, StyleConfirmationMode, TagsInputComponent, TagsInputDTO, TagsInputOptions, TextAreaComponent, TextAreaOptions, TextBoxOptions, TextboxComponent, ToggleSlideOptions, ToggleslideComponent, UploadPersonalImage, environment, options, ɵ0 };
|
|
7047
|
+
export { AppInjector, Attribute, AutocompleteDTO, AutocompleteOptions, AutocompleteTextBoxComponent, BBSFControlsModule, CalendarComponent, CalendarEventDTO, CalendarOptions, CalendarView, CancelDTO, CheckBoxComponent, CheckBoxOptions, ConfirmationModalComponent, ConfirmationModalOptions, ControlLayout, ControlUtility, Country, CustomValidation, CustomValidator, DataType, DateInputComponent, DatePickerOptions, DropdownListComponent, DropdownListItem, DropdownOptions, EditPersonalImage, EnglishArabicDTO, ErrorMassageValidation, FileType, FileUploadComponent, FileUploadModel, FileUploadOptions, FilterItem, FilterType, FontSize, ForceDirection, FormComponent, FormOptions, GlobalSettings, HtmlEditorComponent, HtmlEditorOptions, IconPosition, ImageType, ImageUploadOptions, ImageUploaderComponent, InputType, Insert, JwPaginationComponent, LanguageMode, LanguageType, MapAutoCompleteComponent, MapAutoCompleteOptions, MapAutocompleteDTO, MenuListType, Misc, MultiLingualHtmlEditorComponent, MultiLingualHtmlEditorOptions, MultiLingualTextAreaComponent, MultiLingualTextAreaOptions, MultiLingualTextBoxComponent, MultiLingualTextBoxOptions, MultipleFileUploadModel, NgTemplateNameDirective, OnPagingFiltersChangeService, PagingActionMode, PagingComponent, PagingDTO, PagingOptions, Para, PermissionSets, PhoneComponent, PhoneOptions, PickerType, ProfileImageUploadOptions, ProfileImageUploaderComponent, ProfilePictureDTO, PropertyLocation, RadioButtonComponent, RadioButtonItem, RadioButtonOptions, RangeNumber, RenderComponentService, RepeaterComponent, RepeaterField, RepeaterFieldBuilderComponent, RepeaterItemFieldComponent, RepeaterOptions, SaveDTO, SelectMode, StartView, Style, StyleConfirmationMode, TagsInputComponent, TagsInputDTO, TagsInputOptions, TextAreaComponent, TextAreaOptions, TextBoxOptions, TextboxComponent, ToggleSlideOptions, ToggleslideComponent, UploadPersonalImage, environment, options, ɵ0 };
|
|
6142
7048
|
//# sourceMappingURL=bnsights-bbsf-controls.js.map
|