@bnsights/bbsf-controls 1.0.34 → 1.0.35
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 +10 -0
- package/bnsights-bbsf-controls-1.0.35.tgz +0 -0
- package/bnsights-bbsf-controls.metadata.json +1 -1
- package/bundles/bnsights-bbsf-controls.umd.js +381 -245
- package/bundles/bnsights-bbsf-controls.umd.js.map +1 -1
- package/esm2015/lib/Shared/Models/AutocompleteOptions.js +5 -10
- package/esm2015/lib/Shared/Models/CalendarOptions.js +4 -2
- package/esm2015/lib/Shared/Models/CheckBoxOptions.js +4 -5
- package/esm2015/lib/Shared/Models/ControlOptionsBase.js +9 -0
- package/esm2015/lib/Shared/Models/DropdownOptions.js +4 -6
- package/esm2015/lib/Shared/Models/FileUploadOptions.js +4 -7
- package/esm2015/lib/Shared/Models/HtmlEditorOptions.js +4 -7
- package/esm2015/lib/Shared/Models/ImageUploadOptions.js +4 -7
- package/esm2015/lib/Shared/Models/MapAutoCompleteOptions.js +3 -9
- package/esm2015/lib/Shared/Models/MultiLingualHtmlEditorOptions.js +4 -12
- package/esm2015/lib/Shared/Models/MultiLingualTextAreaOptions.js +4 -12
- package/esm2015/lib/Shared/Models/MultilingualControlOptionsBase.js +14 -0
- package/esm2015/lib/Shared/Models/MultilingualTextBoxOptions.js +4 -12
- package/esm2015/lib/Shared/Models/PhoneOptions.js +4 -11
- package/esm2015/lib/Shared/Models/ProfileImageUploadOptions.js +4 -7
- package/esm2015/lib/Shared/Models/RadioButtonOptions.js +3 -8
- package/esm2015/lib/Shared/Models/TagsInputOptions.js +4 -9
- package/esm2015/lib/Shared/Models/TextAreaOptions.js +4 -7
- package/esm2015/lib/Shared/Models/TextBoxOptions.js +4 -7
- package/esm2015/lib/Shared/Models/ToggleslideOptions.js +4 -3
- package/esm2015/lib/Shared/Models/datePickerOptions.js +4 -8
- package/esm2015/lib/Shared/Pipes/bbsf-date-time.pipe.js +20 -0
- package/esm2015/lib/Shared/Pipes/bbsf-date.pipe.js +20 -0
- package/esm2015/lib/Shared/services/ControlUtility.js +17 -4
- package/esm2015/lib/controls/AutocompleteTextBox/AutocompleteTextBox.component.js +6 -2
- package/esm2015/lib/controls/CheckBox/CheckBox.component.js +5 -1
- package/esm2015/lib/controls/DateTimePicker/DateTimePicker.component.js +6 -2
- package/esm2015/lib/controls/DropdownList/DropdownList.component.js +6 -2
- package/esm2015/lib/controls/FileUplaod/FileUplaod.component.js +6 -2
- package/esm2015/lib/controls/HtmlEditor/HtmlEditor.component.js +6 -2
- package/esm2015/lib/controls/ImageUpload/ImageUpload.component.js +6 -2
- package/esm2015/lib/controls/MapAutoComplete/MapAutoComplete.component.js +5 -1
- package/esm2015/lib/controls/MultiLingualHtmlEditor/MultiLingualHtmlEditor.component.js +14 -4
- package/esm2015/lib/controls/MultiLingualTextArea/MultiLingualTextArea.component.js +12 -4
- package/esm2015/lib/controls/MultiLingualTextBox/MultiLingualTextBox.component.js +11 -3
- package/esm2015/lib/controls/Phone/Phone.component.js +6 -2
- package/esm2015/lib/controls/ProfileImageUploader/ProfileImageUploader.component.js +6 -2
- package/esm2015/lib/controls/RadioButton/RadioButton.component.js +6 -2
- package/esm2015/lib/controls/TagsInput/TagsInput.component.js +6 -2
- package/esm2015/lib/controls/TextArea/TextArea.component.js +6 -3
- package/esm2015/lib/controls/TextBox/TextBox.component.js +14 -6
- package/esm2015/lib/controls/Toggleslide/toggleslide.component.js +14 -3
- package/esm2015/lib/controls/bbsf-controls.module.js +14 -4
- package/esm2015/public-api.js +5 -1
- package/fesm2015/bnsights-bbsf-controls.js +245 -159
- package/fesm2015/bnsights-bbsf-controls.js.map +1 -1
- package/lib/Shared/Models/AutocompleteOptions.d.ts +3 -40
- package/lib/Shared/Models/CalendarOptions.d.ts +2 -8
- package/lib/Shared/Models/CheckBoxOptions.d.ts +2 -33
- package/lib/Shared/Models/ControlOptionsBase.d.ts +40 -0
- package/lib/Shared/Models/DropdownOptions.d.ts +2 -39
- package/lib/Shared/Models/FileUploadOptions.d.ts +2 -39
- package/lib/Shared/Models/HtmlEditorOptions.d.ts +2 -37
- package/lib/Shared/Models/ImageUploadOptions.d.ts +2 -38
- package/lib/Shared/Models/MapAutoCompleteOptions.d.ts +2 -40
- package/lib/Shared/Models/MultiLingualHtmlEditorOptions.d.ts +2 -77
- package/lib/Shared/Models/MultiLingualTextAreaOptions.d.ts +2 -76
- package/lib/Shared/Models/MultilingualControlOptionsBase.d.ts +71 -0
- package/lib/Shared/Models/MultilingualTextBoxOptions.d.ts +2 -76
- package/lib/Shared/Models/PhoneOptions.d.ts +2 -38
- package/lib/Shared/Models/ProfileImageUploadOptions.d.ts +2 -38
- package/lib/Shared/Models/RadioButtonOptions.d.ts +3 -39
- package/lib/Shared/Models/TagsInputOptions.d.ts +4 -43
- package/lib/Shared/Models/TextAreaOptions.d.ts +4 -42
- package/lib/Shared/Models/TextBoxOptions.d.ts +3 -41
- package/lib/Shared/Models/ToggleslideOptions.d.ts +3 -30
- package/lib/Shared/Models/datePickerOptions.d.ts +2 -40
- package/lib/Shared/Pipes/bbsf-date-time.pipe.d.ts +7 -0
- package/lib/Shared/Pipes/bbsf-date.pipe.d.ts +7 -0
- package/lib/Shared/services/ControlUtility.d.ts +4 -2
- package/lib/controls/Toggleslide/toggleslide.component.d.ts +3 -1
- package/package.json +3 -2
- package/public-api.d.ts +4 -0
- package/src/lib/assets/Style.css +2 -2
- package/bnsights-bbsf-controls-1.0.34.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, Directive, TemplateRef, ViewChildren, ComponentFactoryResolver, ViewContainerRef, NgModule, NO_ERRORS_SCHEMA, Injector } from '@angular/core';
|
|
7
|
+
import { Injectable, Optional, EventEmitter, Component, Input, Output, ViewChild, NgZone, Directive, TemplateRef, ViewChildren, ComponentFactoryResolver, ViewContainerRef, Pipe, 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';
|
|
@@ -45,6 +45,7 @@ import ArLocale from '@fullcalendar/core/locales/ar';
|
|
|
45
45
|
import { TypeaheadModule } from 'ngx-bootstrap/typeahead';
|
|
46
46
|
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
|
|
47
47
|
import { AngularEditorModule } from '@kolkov/angular-editor';
|
|
48
|
+
import { AutocompleteLibModule } from 'angular-ng-autocomplete';
|
|
48
49
|
import { InlineSVGModule } from 'ng-inline-svg';
|
|
49
50
|
import Swal from 'sweetalert2';
|
|
50
51
|
import { SweetAlert2Module } from '@sweetalert2/ngx-sweetalert2';
|
|
@@ -192,9 +193,10 @@ var InputType;
|
|
|
192
193
|
})(InputType || (InputType = {}));
|
|
193
194
|
|
|
194
195
|
class ControlUtility {
|
|
195
|
-
constructor(ErrorHandler, controlValidationService) {
|
|
196
|
+
constructor(ErrorHandler, controlValidationService, utilityService) {
|
|
196
197
|
this.ErrorHandler = ErrorHandler;
|
|
197
198
|
this.controlValidationService = controlValidationService;
|
|
199
|
+
this.utilityService = utilityService;
|
|
198
200
|
}
|
|
199
201
|
getErrorValidation(Errorsitem, CustomValidation) {
|
|
200
202
|
let resulte = '';
|
|
@@ -226,8 +228,19 @@ class ControlUtility {
|
|
|
226
228
|
return valid ? null : error;
|
|
227
229
|
};
|
|
228
230
|
}
|
|
231
|
+
patchControlValue(originalValue, PatchFunction, PatchPath) {
|
|
232
|
+
var patchOp = [{
|
|
233
|
+
op: "replace",
|
|
234
|
+
path: PatchPath,
|
|
235
|
+
value: originalValue
|
|
236
|
+
}];
|
|
237
|
+
var patchService = PatchFunction.call(null, patchOp);
|
|
238
|
+
patchService.subscribe(r => console.log(r), erorr => this.utilityService.notifyErrorMessage(erorr));
|
|
239
|
+
}
|
|
229
240
|
arabicValidator(error) {
|
|
230
241
|
return (control) => {
|
|
242
|
+
if (!control.value)
|
|
243
|
+
return null;
|
|
231
244
|
if (control.value.match('[\u0600-\u06FF]')) {
|
|
232
245
|
if (control.value.match('[A-Za-z]') != null) {
|
|
233
246
|
//FOUND ENGLISH CHARS
|
|
@@ -334,7 +347,8 @@ ControlUtility.decorators = [
|
|
|
334
347
|
];
|
|
335
348
|
ControlUtility.ctorParameters = () => [
|
|
336
349
|
{ type: ErrorMassageValidation },
|
|
337
|
-
{ type: ControlValidationService }
|
|
350
|
+
{ type: ControlValidationService },
|
|
351
|
+
{ type: UtilityService }
|
|
338
352
|
];
|
|
339
353
|
|
|
340
354
|
var PickerType;
|
|
@@ -527,7 +541,11 @@ class DateInputComponent {
|
|
|
527
541
|
}
|
|
528
542
|
this.DatePickerFormControl.setValue(DateValue);
|
|
529
543
|
this.onChangeService.ChangeValue(this.options.Name);
|
|
530
|
-
|
|
544
|
+
let originalValue = DateValue;
|
|
545
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.group.get(this.options.Name).valid) {
|
|
546
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
547
|
+
}
|
|
548
|
+
this.OnChange.emit(originalValue);
|
|
531
549
|
}
|
|
532
550
|
subscribeDateChanges() {
|
|
533
551
|
const startDateChanges = this.comparedControl.valueChanges;
|
|
@@ -860,7 +878,11 @@ class FileUploadComponent {
|
|
|
860
878
|
this.group.get(this.options.Name).setValue(this.multipleFileUploadModel);
|
|
861
879
|
}
|
|
862
880
|
};
|
|
863
|
-
this.
|
|
881
|
+
let originalValue = this.group.get(this.options.Name).value;
|
|
882
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.group.get(this.options.Name).valid) {
|
|
883
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
884
|
+
}
|
|
885
|
+
this.OnChange.emit(originalValue);
|
|
864
886
|
}
|
|
865
887
|
}
|
|
866
888
|
}
|
|
@@ -1198,13 +1220,21 @@ class MultiLingualTextBoxComponent {
|
|
|
1198
1220
|
trimControlValue(type) {
|
|
1199
1221
|
const whitespace = ' ';
|
|
1200
1222
|
if (type == "En") {
|
|
1223
|
+
let originalValue = this.EnglishFormControl.value;
|
|
1224
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.EnglishFormControl.valid) {
|
|
1225
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
1226
|
+
}
|
|
1201
1227
|
if (this.EnglishFormControl.value.startsWith(whitespace) || this.EnglishFormControl.value.endsWith(whitespace)) {
|
|
1202
|
-
this.EnglishFormControl.patchValue(
|
|
1228
|
+
this.EnglishFormControl.patchValue(originalValue);
|
|
1203
1229
|
}
|
|
1204
1230
|
}
|
|
1205
1231
|
if (type == "Ar") {
|
|
1232
|
+
let originalValue = this.ArabicFormControl.value;
|
|
1233
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.ArabicFormControl.valid) {
|
|
1234
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
1235
|
+
}
|
|
1206
1236
|
if (this.ArabicFormControl.value.startsWith(whitespace) || this.ArabicFormControl.value.endsWith(whitespace)) {
|
|
1207
|
-
this.ArabicFormControl.patchValue(
|
|
1237
|
+
this.ArabicFormControl.patchValue(originalValue);
|
|
1208
1238
|
}
|
|
1209
1239
|
}
|
|
1210
1240
|
}
|
|
@@ -1432,8 +1462,11 @@ class TextAreaComponent {
|
|
|
1432
1462
|
return this.controlUtility.getInputType(type);
|
|
1433
1463
|
}
|
|
1434
1464
|
trimControlValue() {
|
|
1435
|
-
let
|
|
1436
|
-
this.TextAreaFormControl.patchValue(
|
|
1465
|
+
let originalValue = this.controlUtility.trimControlValue(this.TextAreaFormControl.value);
|
|
1466
|
+
this.TextAreaFormControl.patchValue(originalValue);
|
|
1467
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.TextAreaFormControl.valid) {
|
|
1468
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
1469
|
+
}
|
|
1437
1470
|
}
|
|
1438
1471
|
copyInputMessage(inputElement) {
|
|
1439
1472
|
this.controlUtility.CopyInputMessage(inputElement);
|
|
@@ -1774,13 +1807,21 @@ class MultiLingualTextAreaComponent {
|
|
|
1774
1807
|
trimControlValue(type) {
|
|
1775
1808
|
const whitespace = ' ';
|
|
1776
1809
|
if (type == "En") {
|
|
1810
|
+
let originalValue = this.EnglishTextAreaFormControl.value;
|
|
1811
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.EnglishTextAreaFormControl.valid) {
|
|
1812
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
1813
|
+
}
|
|
1777
1814
|
if (this.EnglishTextAreaFormControl.value.startsWith(whitespace) || this.EnglishTextAreaFormControl.value.endsWith(whitespace)) {
|
|
1778
|
-
this.EnglishTextAreaFormControl.patchValue(
|
|
1815
|
+
this.EnglishTextAreaFormControl.patchValue(originalValue);
|
|
1779
1816
|
}
|
|
1780
1817
|
}
|
|
1781
1818
|
if (type == "Ar") {
|
|
1819
|
+
let originalValue = this.ArabicTextAreaFormControl.value;
|
|
1820
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.ArabicTextAreaFormControl.valid) {
|
|
1821
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
1822
|
+
}
|
|
1782
1823
|
if (this.ArabicTextAreaFormControl.value.startsWith(whitespace) || this.ArabicTextAreaFormControl.value.endsWith(whitespace)) {
|
|
1783
|
-
this.ArabicTextAreaFormControl.patchValue(
|
|
1824
|
+
this.ArabicTextAreaFormControl.patchValue(originalValue);
|
|
1784
1825
|
}
|
|
1785
1826
|
}
|
|
1786
1827
|
}
|
|
@@ -1886,7 +1927,7 @@ MultiLingualTextAreaComponent.controlContainerstatic = null;
|
|
|
1886
1927
|
MultiLingualTextAreaComponent.decorators = [
|
|
1887
1928
|
{ type: Component, args: [{
|
|
1888
1929
|
selector: 'BBSF-MultiLingualTextArea',
|
|
1889
|
-
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)=\"onEnglishFocus(true)\" (focusout)=\"onEnglishFocus(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 (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 *ngIf=\"showEnglishCharsLimitMsg\">\r\n <span class=\"badge b-character-warning float-end\" [ngClass]=\"{'badge-light-warning': englishCharsLimitMsgClass === 'warning', 'badge-light-danger' : englishCharsLimitMsgClass === 'danger' }\">\r\n {{englishMaxLimitWarningMsg}}\r\n </span>\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.
|
|
1930
|
+
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)=\"onEnglishFocus(true)\" (focusout)=\"onEnglishFocus(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 (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 *ngIf=\"showEnglishCharsLimitMsg\">\r\n <span class=\"badge b-character-warning float-end\" [ngClass]=\"{'badge-light-warning': englishCharsLimitMsgClass === 'warning', 'badge-light-danger' : englishCharsLimitMsgClass === 'danger' }\">\r\n {{englishMaxLimitWarningMsg}}\r\n </span>\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.IsHideArabicLabel\">\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)=\"onArabicFocus(true)\" (focusout)=\"onArabicFocus(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 *ngIf=\"showArabicCharsLimitMsg\">\r\n <span class=\"badge b-character-warning float-end\" [ngClass]=\"{'badge-light-warning': arabicCharsLimitMsgClass === 'warning', 'badge-light-danger' : arabicCharsLimitMsgClass === 'danger' }\">\r\n {{arabicMaxLimitWarningMsg}}\r\n </span>\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",
|
|
1890
1931
|
styles: [".example-form{min-width:150px;max-width:500px;width:100%}.example-full-width{width:100%}\n"]
|
|
1891
1932
|
},] }
|
|
1892
1933
|
];
|
|
@@ -1986,6 +2027,10 @@ class CheckBoxComponent {
|
|
|
1986
2027
|
}
|
|
1987
2028
|
onValueChanged() {
|
|
1988
2029
|
this.OnChange.emit(this.CheckBoxFormControl.value);
|
|
2030
|
+
let originalValue = this.CheckBoxFormControl.value;
|
|
2031
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.group.get(this.options.Name).valid) {
|
|
2032
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
2033
|
+
}
|
|
1989
2034
|
}
|
|
1990
2035
|
}
|
|
1991
2036
|
CheckBoxComponent.controlContainerstatic = null;
|
|
@@ -2121,7 +2166,11 @@ class DropdownListComponent {
|
|
|
2121
2166
|
}
|
|
2122
2167
|
onItemSelect(item) {
|
|
2123
2168
|
this.onChangeService.ChangeValue(this.options.Name);
|
|
2124
|
-
|
|
2169
|
+
let originalValue = item;
|
|
2170
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.group.get(this.options.Name).valid) {
|
|
2171
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
2172
|
+
}
|
|
2173
|
+
this.OnChange.emit(originalValue);
|
|
2125
2174
|
//console.log(this.DropdownListFormControl.value)
|
|
2126
2175
|
}
|
|
2127
2176
|
Clear() {
|
|
@@ -2265,7 +2314,11 @@ class PhoneComponent {
|
|
|
2265
2314
|
}
|
|
2266
2315
|
onValueChanged() {
|
|
2267
2316
|
let Number = this.PhoneFormControl.value.internationalNumber;
|
|
2268
|
-
this.
|
|
2317
|
+
let originalValue = this.controlUtility.trimControlValue(Number);
|
|
2318
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.group.get(this.options.Name).valid) {
|
|
2319
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
2320
|
+
}
|
|
2321
|
+
this.OnChange.emit(originalValue);
|
|
2269
2322
|
}
|
|
2270
2323
|
}
|
|
2271
2324
|
PhoneComponent.controlContainerstatic = null;
|
|
@@ -2302,6 +2355,7 @@ class ToggleslideComponent {
|
|
|
2302
2355
|
this.globalSettings = globalSettings;
|
|
2303
2356
|
this.OnChange = new EventEmitter();
|
|
2304
2357
|
this.SlideValue = false;
|
|
2358
|
+
this.markAllAsTouched = false;
|
|
2305
2359
|
ToggleslideComponent.controlContainerstatic = this.controlContainer;
|
|
2306
2360
|
}
|
|
2307
2361
|
ngOnInit() {
|
|
@@ -2329,12 +2383,22 @@ class ToggleslideComponent {
|
|
|
2329
2383
|
resetError() {
|
|
2330
2384
|
this.controlValidationService.RemoveGlobalError();
|
|
2331
2385
|
}
|
|
2332
|
-
|
|
2333
|
-
|
|
2386
|
+
showGlobalError() {
|
|
2387
|
+
this.controlUtility.showGlobalError();
|
|
2388
|
+
}
|
|
2389
|
+
getErrorValidation(ErrorList) {
|
|
2390
|
+
if (this.markAllAsTouched && this.group.invalid) {
|
|
2391
|
+
this.showGlobalError();
|
|
2392
|
+
this.markAllAsTouched = false;
|
|
2393
|
+
}
|
|
2394
|
+
return this.controlUtility.getErrorValidationMassage(ErrorList, this.group, this.options);
|
|
2334
2395
|
}
|
|
2335
2396
|
changeValueToggle() {
|
|
2336
2397
|
this.OnChange.emit(this.SlideValue);
|
|
2337
2398
|
this.ToggleslideFormControl.setValue(this.SlideValue);
|
|
2399
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.ToggleslideFormControl.valid) {
|
|
2400
|
+
this.controlUtility.patchControlValue(this.SlideValue, this.options.PatchFunction, this.options.PatchPath);
|
|
2401
|
+
}
|
|
2338
2402
|
}
|
|
2339
2403
|
}
|
|
2340
2404
|
ToggleslideComponent.controlContainerstatic = null;
|
|
@@ -2538,7 +2602,11 @@ class HtmlEditorComponent {
|
|
|
2538
2602
|
}
|
|
2539
2603
|
onValueChanged() {
|
|
2540
2604
|
this.HtmlEditorFormControl.setValue(this.HtmlEditorFormControl.value.trim());
|
|
2541
|
-
this.
|
|
2605
|
+
let originalValue = this.controlUtility.trimControlValue(this.HtmlEditorFormControl.value);
|
|
2606
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.HtmlEditorFormControl.valid) {
|
|
2607
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
2608
|
+
}
|
|
2609
|
+
this.OnChange.emit(originalValue);
|
|
2542
2610
|
}
|
|
2543
2611
|
}
|
|
2544
2612
|
HtmlEditorComponent.controlContainerstatic = null;
|
|
@@ -2823,8 +2891,13 @@ class MultiLingualHtmlEditorComponent {
|
|
|
2823
2891
|
if (type == "en") {
|
|
2824
2892
|
this.MultilingualHtmlEditorgroup.controls["English"].setValue(this.MultilingualHtmlEditorgroup.controls["English"].value.trim());
|
|
2825
2893
|
this.englishValue = this.MultilingualHtmlEditorgroup.controls["English"].value == null ? "" : this.MultilingualHtmlEditorgroup.controls["English"].value;
|
|
2826
|
-
if (this.englishValue)
|
|
2894
|
+
if (this.englishValue) {
|
|
2827
2895
|
this.EnglishHtmlEditorFormControl.setValue(this.englishValue);
|
|
2896
|
+
let originalValue = this.englishValue;
|
|
2897
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.EnglishHtmlEditorFormControl.valid) {
|
|
2898
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
2899
|
+
}
|
|
2900
|
+
}
|
|
2828
2901
|
let EngliswordCountArray = this.EnglishHtmlEditorFormControl.value.split(" ").length;
|
|
2829
2902
|
if (EngliswordCountArray > 0) {
|
|
2830
2903
|
if (EngliswordCountArray > this.options.MaxWordCount)
|
|
@@ -2836,8 +2909,13 @@ class MultiLingualHtmlEditorComponent {
|
|
|
2836
2909
|
if (type == "ar") {
|
|
2837
2910
|
this.MultilingualHtmlEditorgroup.controls["Arabic"].setValue(this.MultilingualHtmlEditorgroup.controls["Arabic"].value.trim());
|
|
2838
2911
|
this.arabicValue = this.MultilingualHtmlEditorgroup.controls["Arabic"].value == null ? "" : this.MultilingualHtmlEditorgroup.controls["Arabic"].value;
|
|
2839
|
-
if (this.arabicValue)
|
|
2912
|
+
if (this.arabicValue) {
|
|
2840
2913
|
this.ArabicHtmlEditorFormControl.setValue(this.arabicValue);
|
|
2914
|
+
let originalValue = this.arabicValue;
|
|
2915
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.ArabicHtmlEditorFormControl.valid) {
|
|
2916
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
2917
|
+
}
|
|
2918
|
+
}
|
|
2841
2919
|
let ArabicwordCountArray = this.ArabicHtmlEditorFormControl.value.split(" ").length;
|
|
2842
2920
|
if (ArabicwordCountArray > 0) {
|
|
2843
2921
|
if (ArabicwordCountArray > this.options.MaxWordCount)
|
|
@@ -2942,7 +3020,7 @@ MultiLingualHtmlEditorComponent.controlContainerstatic = null;
|
|
|
2942
3020
|
MultiLingualHtmlEditorComponent.decorators = [
|
|
2943
3021
|
{ type: Component, args: [{
|
|
2944
3022
|
selector: 'BBSF-MultiLingualHtmlEditor',
|
|
2945
|
-
template: "<div class=\"b-control b-multilangual-html-editor\">\r\n <div class=\"form-group validate is-invalid\" [formGroup]=\"group\">\r\n\r\n <div class=\"form-group row\" [formGroup]=\"MultilingualHtmlEditorgroup\">\r\n <div class=\"col-lg-6\">\r\n <div class=\"row\" *ngIf=\"ShowEnglishHtmlEditor\">\r\n <label class=\"b-label col-form-label col-sm-12 \" \r\n [ngClass]=\"(options.ViewType==1)?'col-md-9':'col-md-3'\"\r\n [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 \r\n <angular-editor class=\"form-control bnsights-control {{options.ExtraClasses_EN}} \" (change)=\"onTextChange('en')\" [class.is-invalid]=\"EnglishHtmlEditorFormControl.invalid && EnglishHtmlEditorFormControl.touched\"\r\n formControlName=\"English\" [config]=\"editorEnglishConfig\"></angular-editor>\r\n\r\n <div class=\"text-danger Required-text\"\r\n *ngIf=\"(EnglishHtmlEditorFormControl.invalid && EnglishHtmlEditorFormControl.touched)\">\r\n {{getErrorValidation(EnglishHtmlEditorFormControl.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\">\r\n {{(options.EnglishLabelDescription!=null&&options.EnglishLabelDescription!=\"\")?options.EnglishLabelDescription:options.LabelDescription}}\r\n </div>\r\n </div>\r\n\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 class=\"col-lg-6\">\r\n <div class=\"row\" *ngIf=\"ShowArabicHtmlEditor\">\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'\"\r\n [hidden]=\"options.
|
|
3023
|
+
template: "<div class=\"b-control b-multilangual-html-editor\">\r\n <div class=\"form-group validate is-invalid\" [formGroup]=\"group\">\r\n\r\n <div class=\"form-group row\" [formGroup]=\"MultilingualHtmlEditorgroup\">\r\n <div class=\"col-lg-6\">\r\n <div class=\"row\" *ngIf=\"ShowEnglishHtmlEditor\">\r\n <label class=\"b-label col-form-label col-sm-12 \" \r\n [ngClass]=\"(options.ViewType==1)?'col-md-9':'col-md-3'\"\r\n [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 \r\n <angular-editor class=\"form-control bnsights-control {{options.ExtraClasses_EN}} \" (change)=\"onTextChange('en')\" [class.is-invalid]=\"EnglishHtmlEditorFormControl.invalid && EnglishHtmlEditorFormControl.touched\"\r\n formControlName=\"English\" [config]=\"editorEnglishConfig\"></angular-editor>\r\n\r\n <div class=\"text-danger Required-text\"\r\n *ngIf=\"(EnglishHtmlEditorFormControl.invalid && EnglishHtmlEditorFormControl.touched)\">\r\n {{getErrorValidation(EnglishHtmlEditorFormControl.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\">\r\n {{(options.EnglishLabelDescription!=null&&options.EnglishLabelDescription!=\"\")?options.EnglishLabelDescription:options.LabelDescription}}\r\n </div>\r\n </div>\r\n\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 class=\"col-lg-6\">\r\n <div class=\"row\" *ngIf=\"ShowArabicHtmlEditor\">\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'\"\r\n [hidden]=\"options.IsHideArabicLabel\">\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 \r\n\r\n <angular-editor dir=\"rtl\" class=\"form-control bnsights-control {{options.ExtraClasses_AR}} \" (change)=\"onTextChange('ar')\" [class.is-invalid]=\"ArabicHtmlEditorFormControl.invalid && ArabicHtmlEditorFormControl.touched\"\r\n formControlName=\"Arabic\" [config]=\"editorArabicConfig\"></angular-editor>\r\n\r\n <div class=\"text-danger Required-text\"\r\n *ngIf=\"(ArabicHtmlEditorFormControl.invalid && ArabicHtmlEditorFormControl.touched)\">\r\n {{getErrorValidation(ArabicHtmlEditorFormControl.errors|keyvalue)}}\r\n </div>\r\n\r\n \r\n\r\n <div class=\"d-flex justify-content-between align-items-center\">\r\n <div class=\"control-desc text-dark\">\r\n {{(options.ArabicLabelDescription!=null&&options.ArabicLabelDescription!=\"\")?options.ArabicLabelDescription:options.LabelDescription}}\r\n </div>\r\n </div>\r\n\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\r\n\r\n </div>\r\n </div>\r\n </div>\r\n\r\n\r\n\r\n </div>\r\n\r\n</div>\r\n",
|
|
2946
3024
|
styles: [".example-form{min-width:150px;max-width:500px;width:100%}.example-full-width{width:100%}\n"]
|
|
2947
3025
|
},] }
|
|
2948
3026
|
];
|
|
@@ -3176,7 +3254,11 @@ class ImageUploaderComponent {
|
|
|
3176
3254
|
this.files = [];
|
|
3177
3255
|
this.files.push(...event.addedFiles);
|
|
3178
3256
|
}
|
|
3179
|
-
this.
|
|
3257
|
+
let originalValue = this.ImageUploadFormControl.value;
|
|
3258
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.ImageUploadFormControl.valid) {
|
|
3259
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
3260
|
+
}
|
|
3261
|
+
this.OnChange.emit(originalValue);
|
|
3180
3262
|
};
|
|
3181
3263
|
}
|
|
3182
3264
|
}
|
|
@@ -3454,7 +3536,11 @@ class ProfileImageUploaderComponent {
|
|
|
3454
3536
|
reader.onload = () => {
|
|
3455
3537
|
this.imageUrl = reader.result.toString();
|
|
3456
3538
|
this.openModal(true);
|
|
3457
|
-
this.
|
|
3539
|
+
let originalValue = this.group.get(this.options.Name).value;
|
|
3540
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.group.get(this.options.Name).valid) {
|
|
3541
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
3542
|
+
}
|
|
3543
|
+
this.OnChange.emit(originalValue);
|
|
3458
3544
|
};
|
|
3459
3545
|
}
|
|
3460
3546
|
}
|
|
@@ -3784,6 +3870,10 @@ class AutocompleteTextBoxComponent {
|
|
|
3784
3870
|
else {
|
|
3785
3871
|
this.AutocompleteTextBoxControl.setValue(item);
|
|
3786
3872
|
this.AutocompleteTextBoxControl.updateValueAndValidity();
|
|
3873
|
+
let originalValue = this.AutocompleteTextBoxControl.value;
|
|
3874
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.group.get(this.options.Name).valid) {
|
|
3875
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
3876
|
+
}
|
|
3787
3877
|
this.OnChange.emit(this.AutocompleteTextBoxControl.value);
|
|
3788
3878
|
}
|
|
3789
3879
|
}
|
|
@@ -3813,7 +3903,7 @@ AutocompleteTextBoxComponent.decorators = [
|
|
|
3813
3903
|
{ type: Component, args: [{
|
|
3814
3904
|
// tslint:disable-next-line: component-selector
|
|
3815
3905
|
selector: 'BBSF-AutocompleteTextBox',
|
|
3816
|
-
template: "<div class=\"b-control b-auto-complete-textbox\">\r\n <div class=\"form-group row validate is-invalid\" [formGroup]=\"group\">\r\n\r\n <label class=\"b-label col-form-label col-sm-12 \" [ngClass]=\"(options.ViewType==1)?'col-md-12':'col-md-3'\"\r\n
|
|
3906
|
+
template: "<div class=\"b-control b-auto-complete-textbox\">\r\n <div class=\"form-group row validate is-invalid\" [formGroup]=\"group\">\r\n\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\r\n <!-- <input \r\n[(ngModel)]=\"Search\"\r\n value=\"{{Search}}\" \r\n autocomplete=\"off\"\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 [class.is-invalid]=\"AutocompleteTextBoxControl.invalid && AutocompleteTextBoxControl.touched\"\r\n typeaheadOptionField=\"{{Value}}\"\r\n [typeahead]=\"suggestions$\"\r\n [typeaheadAsync]=\"true\"\r\n placeholder=\"{{options.Placeholder}}\" id=\"{{options.Name}}\" (typeaheadOnSelect)=\"handleResultSelected($event)\" (blur)=\"onBlur($event.target.value)\" /> -->\r\n <!-- \r\n <input ngxTypeahead autocomplete=\"off\"\r\n value=\"{{Search}}\"\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 [class.is-invalid]=\"AutocompleteTextBoxControl.invalid && AutocompleteTextBoxControl.touched\"\r\n placeholder=\"{{options.Placeholder}}\" id=\"{{options.Name}}\" [taUrl]=\"options.ActionURL\"\r\n [taParams]=\"options.Params\" taQueryParam=\"{{QueryParam}}\" taApi=\"{{Api}}\" taListItemLabel=\"{{Value}}\" (taSelected)=\"handleResultSelected($event)\"> -->\r\n\r\n\r\n\r\n <ng-autocomplete *ngIf=\"!options.AllowNewSelection\" [data]=\"dataList\" [initialValue]=\"SelectedValue\"\r\n [searchKeyword]=\"keyword\" placeholder=\"{{options.Placeholder}}\" (selected)='selectEvent($event)'\r\n (inputChanged)='onChangeSearch($event)' historyIdentifier=\"dataList\" [itemTemplate]=\"itemTemplate\"\r\n [notFoundTemplate]=\"notFoundTemplate\" class=\"form-control bnsights-control {{options.ExtraClasses}}\"\r\n dir=\"{{options.ForceDirection==2?'rtl':''}}\" formControlName=\"{{options.Name}}\" aria-describedby=\"email-error\"\r\n aria-invalid=\"true\"\r\n [class.is-invalid]=\"AutocompleteTextBoxControl.invalid && AutocompleteTextBoxControl.touched\">\r\n </ng-autocomplete>\r\n\r\n <ng-autocomplete *ngIf=\"options.AllowNewSelection\" [data]=\"dataList\" [initialValue]=\"SelectedValue\"\r\n [searchKeyword]=\"keyword\" placeholder=\"{{options.Placeholder}}\" (selected)='selectEvent($event)'\r\n (inputChanged)='onChangeSearch($event)' historyIdentifier=\"dataList\" [itemTemplate]=\"itemTemplate\"\r\n class=\"form-control bnsights-control {{options.ExtraClasses}}\" dir=\"{{options.ForceDirection==2?'rtl':''}}\"\r\n formControlName=\"{{options.Name}}\" aria-describedby=\"email-error\" aria-invalid=\"true\"\r\n [class.is-invalid]=\"AutocompleteTextBoxControl.invalid && AutocompleteTextBoxControl.touched\">\r\n </ng-autocomplete>\r\n\r\n\r\n\r\n <ng-template #itemTemplate let-item>\r\n <a [innerHTML]=\"item.value\"></a>\r\n </ng-template>\r\n\r\n <ng-template #notFoundTemplate let-notFound>\r\n <div [innerHTML]=\"notFound\"></div>\r\n </ng-template>\r\n\r\n <div class=\"text-danger Required-text\"\r\n *ngIf=\"(AutocompleteTextBoxControl.invalid && AutocompleteTextBoxControl.touched)\">\r\n {{getErrorValidation(AutocompleteTextBoxControl.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\r\n <div *ngIf=\"(group.valid&&group.dirty&&group.touched )||(group.untouched&&group.invalid&&group.dirty) \">\r\n {{resetError()}}</div>\r\n\r\n </div>\r\n </div>\r\n</div>",
|
|
3817
3907
|
styles: [""]
|
|
3818
3908
|
},] }
|
|
3819
3909
|
];
|
|
@@ -3996,7 +4086,11 @@ class TagsInputComponent {
|
|
|
3996
4086
|
this.TagsFormControl.invalid;
|
|
3997
4087
|
}
|
|
3998
4088
|
}
|
|
3999
|
-
this.
|
|
4089
|
+
let originalValue = this.TagsFormControl.value;
|
|
4090
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.TagsFormControl.valid) {
|
|
4091
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
4092
|
+
}
|
|
4093
|
+
this.OnChange.emit(originalValue);
|
|
4000
4094
|
}
|
|
4001
4095
|
onNoOptionsMatch(event) {
|
|
4002
4096
|
this.IsNoMatch = event;
|
|
@@ -4482,7 +4576,11 @@ class RadioButtonComponent {
|
|
|
4482
4576
|
return this.controlUtility.getErrorValidationMassage(ErrorList, this.group, this.options);
|
|
4483
4577
|
}
|
|
4484
4578
|
onValueChanged() {
|
|
4485
|
-
this.
|
|
4579
|
+
let originalValue = this.RadioButtonFormControl.value;
|
|
4580
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.RadioButtonFormControl.valid) {
|
|
4581
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
4582
|
+
}
|
|
4583
|
+
this.OnChange.emit(originalValue);
|
|
4486
4584
|
}
|
|
4487
4585
|
}
|
|
4488
4586
|
RadioButtonComponent.controlContainerstatic = null;
|
|
@@ -4578,6 +4676,9 @@ class TextboxComponent {
|
|
|
4578
4676
|
if (this.options.LabelKey != null && this.options.LabelKey != "")
|
|
4579
4677
|
this.options.LabelValue = this.UtilityService.getResourceValue(this.options.LabelKey);
|
|
4580
4678
|
this.getCustomErrorsMassages();
|
|
4679
|
+
if (this.options.IsRequired) {
|
|
4680
|
+
this.validationRules.push(Validators.required);
|
|
4681
|
+
}
|
|
4581
4682
|
switch (this.options.Type) {
|
|
4582
4683
|
case InputType.Email:
|
|
4583
4684
|
this.validationRules.push(Validators.compose([
|
|
@@ -4640,9 +4741,6 @@ class TextboxComponent {
|
|
|
4640
4741
|
this.options.MaxLengthWarningLimit = this.globalSettings.MaxLengthWarningLimit;
|
|
4641
4742
|
this.minCharsLimit = this.options.MaxLength - this.options.MaxLengthWarningLimit;
|
|
4642
4743
|
}
|
|
4643
|
-
if (this.options.IsRequired) {
|
|
4644
|
-
this.validationRules.push(Validators.required);
|
|
4645
|
-
}
|
|
4646
4744
|
this.TextBoxFormControl.setValidators(this.validationRules);
|
|
4647
4745
|
this.TextBoxFormControl.setAsyncValidators(this.validationRulesasync);
|
|
4648
4746
|
if (this.options.IsDisabled) {
|
|
@@ -4671,8 +4769,11 @@ class TextboxComponent {
|
|
|
4671
4769
|
return this.controlUtility.getInputType(type);
|
|
4672
4770
|
}
|
|
4673
4771
|
trimControlValue() {
|
|
4674
|
-
let
|
|
4675
|
-
this.TextBoxFormControl.patchValue(
|
|
4772
|
+
let originalValue = this.controlUtility.trimControlValue(this.TextBoxFormControl.value);
|
|
4773
|
+
this.TextBoxFormControl.patchValue(originalValue);
|
|
4774
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.TextBoxFormControl.valid) {
|
|
4775
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
4776
|
+
}
|
|
4676
4777
|
}
|
|
4677
4778
|
copyInputMessage(inputElement) {
|
|
4678
4779
|
this.controlUtility.CopyInputMessage(inputElement);
|
|
@@ -4688,6 +4789,11 @@ class TextboxComponent {
|
|
|
4688
4789
|
this.EnglishLetterOnly = this.UtilityService.getResourceValue("EnglishLetterOnly");
|
|
4689
4790
|
}
|
|
4690
4791
|
onTextChange() {
|
|
4792
|
+
if (this.options.Type == InputType.Number)
|
|
4793
|
+
if (!this.TextBoxFormControl.value) {
|
|
4794
|
+
this.TextBoxFormControl.setErrors({ IntegerNumberValidationKey: "" });
|
|
4795
|
+
return;
|
|
4796
|
+
}
|
|
4691
4797
|
if (this.TextBoxFormControl.value == "") {
|
|
4692
4798
|
this.WordCountArray = 0;
|
|
4693
4799
|
this.WordCount = 0;
|
|
@@ -5001,6 +5107,10 @@ class MapAutoCompleteComponent {
|
|
|
5001
5107
|
this.MapAutoCompleteModel.Longitude = location.longitude;
|
|
5002
5108
|
this.MapAutoCompleteFormControl.setValue(null);
|
|
5003
5109
|
this.MapAutoCompleteFormControl.setValue(this.MapAutoCompleteModel);
|
|
5110
|
+
let originalValue = this.MapAutoCompleteFormControl.value;
|
|
5111
|
+
if (this.options.PatchFunction && this.options.PatchPath && this.MapAutoCompleteFormControl.valid) {
|
|
5112
|
+
this.controlUtility.patchControlValue(originalValue, this.options.PatchFunction, this.options.PatchPath);
|
|
5113
|
+
}
|
|
5004
5114
|
}
|
|
5005
5115
|
GermanAddressMapped(result) {
|
|
5006
5116
|
this.MapAutoCompleteModel == new MapAutocompleteDTO();
|
|
@@ -5620,13 +5730,18 @@ var ForceDirection;
|
|
|
5620
5730
|
ForceDirection[ForceDirection["Arabic"] = 2] = "Arabic";
|
|
5621
5731
|
})(ForceDirection || (ForceDirection = {}));
|
|
5622
5732
|
|
|
5623
|
-
class
|
|
5733
|
+
class ControlOptionsBase {
|
|
5624
5734
|
constructor() {
|
|
5625
|
-
/** to set type of view if
|
|
5626
|
-
this.ViewType =
|
|
5627
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5628
|
-
*/
|
|
5735
|
+
/** to set type of view if Control is Vertical or Horizontal */
|
|
5736
|
+
this.ViewType = null;
|
|
5737
|
+
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage */
|
|
5629
5738
|
this.CustomValidation = [];
|
|
5739
|
+
}
|
|
5740
|
+
}
|
|
5741
|
+
|
|
5742
|
+
class DatePickerOptions extends ControlOptionsBase {
|
|
5743
|
+
constructor() {
|
|
5744
|
+
super(...arguments);
|
|
5630
5745
|
/**To set First Day Of Week to DatePicker */
|
|
5631
5746
|
this.FirstDayOfWeek = 1;
|
|
5632
5747
|
/**To set PickerType to DatePicker is Calendar or Timer Or Both */
|
|
@@ -5641,14 +5756,11 @@ class DatePickerOptions {
|
|
|
5641
5756
|
}
|
|
5642
5757
|
}
|
|
5643
5758
|
|
|
5644
|
-
class DropdownOptions {
|
|
5759
|
+
class DropdownOptions extends ControlOptionsBase {
|
|
5645
5760
|
constructor() {
|
|
5761
|
+
super(...arguments);
|
|
5646
5762
|
/** Disable Bootstrap DropdownList */
|
|
5647
5763
|
this.DisableBootstrapSelect = false;
|
|
5648
|
-
/** to set type of view if DropdownList is Vertical or Horizontal */
|
|
5649
|
-
this.ViewType = null;
|
|
5650
|
-
/** To Set Custom Validation*/
|
|
5651
|
-
this.CustomValidation = [];
|
|
5652
5764
|
/** Set key for item in DropdownList */
|
|
5653
5765
|
this.ItemTempletkey = "key";
|
|
5654
5766
|
/** Set value for item in DropdownList */
|
|
@@ -5657,27 +5769,19 @@ class DropdownOptions {
|
|
|
5657
5769
|
}
|
|
5658
5770
|
}
|
|
5659
5771
|
|
|
5660
|
-
class FileUploadOptions {
|
|
5772
|
+
class FileUploadOptions extends ControlOptionsBase {
|
|
5661
5773
|
constructor() {
|
|
5774
|
+
super(...arguments);
|
|
5662
5775
|
/** Ability to set FileInput required */
|
|
5663
5776
|
this.IsMultipleFile = false;
|
|
5664
5777
|
/** Sets boolean Value to Show IsDropZone Or Not */
|
|
5665
5778
|
this.IsDropZone = false;
|
|
5666
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5667
|
-
*/
|
|
5668
|
-
this.CustomValidation = [];
|
|
5669
|
-
/** to set type of view if textbox is Vertical or Horizontal */
|
|
5670
|
-
this.ViewType = null;
|
|
5671
5779
|
}
|
|
5672
5780
|
}
|
|
5673
5781
|
|
|
5674
|
-
class HtmlEditorOptions {
|
|
5782
|
+
class HtmlEditorOptions extends ControlOptionsBase {
|
|
5675
5783
|
constructor() {
|
|
5676
|
-
|
|
5677
|
-
this.ViewType = null;
|
|
5678
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5679
|
-
*/
|
|
5680
|
-
this.CustomValidation = [];
|
|
5784
|
+
super(...arguments);
|
|
5681
5785
|
/** to set Direction of HtmlEditor if HtmlEditor is Arabic or English */
|
|
5682
5786
|
this.ForceDirection = ForceDirection.English;
|
|
5683
5787
|
/** Set Height For */
|
|
@@ -5695,45 +5799,26 @@ var ImageType;
|
|
|
5695
5799
|
ImageType["None"] = "";
|
|
5696
5800
|
})(ImageType || (ImageType = {}));
|
|
5697
5801
|
|
|
5698
|
-
class ImageUploadOptions {
|
|
5802
|
+
class ImageUploadOptions extends ControlOptionsBase {
|
|
5699
5803
|
constructor() {
|
|
5804
|
+
super(...arguments);
|
|
5700
5805
|
/** Allow to Upload Multiple File */
|
|
5701
5806
|
this.IsMultiple = false;
|
|
5702
5807
|
/** Allow to Use Drop Zone */
|
|
5703
5808
|
this.AllowDropZone = false;
|
|
5704
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5705
|
-
*/
|
|
5706
|
-
this.CustomValidation = [];
|
|
5707
|
-
/** to set type of view if FileInput is Vertical or Horizontal */
|
|
5708
|
-
this.ViewType = null;
|
|
5709
5809
|
/** Set List of Custom Attribute to FileInput */
|
|
5710
5810
|
this.FileUploadAcceptsTypes = [ImageType.ImageTypes];
|
|
5711
5811
|
}
|
|
5712
5812
|
}
|
|
5713
5813
|
|
|
5714
|
-
class MapAutoCompleteOptions {
|
|
5715
|
-
constructor() {
|
|
5716
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5717
|
-
*/
|
|
5718
|
-
this.CustomValidation = [];
|
|
5719
|
-
/** to set type of view if MapAutoComplete is Vertical or Horizontal */
|
|
5720
|
-
this.ViewType = null;
|
|
5721
|
-
}
|
|
5814
|
+
class MapAutoCompleteOptions extends ControlOptionsBase {
|
|
5722
5815
|
}
|
|
5723
5816
|
|
|
5724
|
-
class PhoneOptions {
|
|
5817
|
+
class PhoneOptions extends ControlOptionsBase {
|
|
5725
5818
|
constructor() {
|
|
5726
|
-
|
|
5727
|
-
* Represent Css classes to Phonebox
|
|
5728
|
-
*/
|
|
5729
|
-
this.ExtraClasses = "form-control bnsights-control";
|
|
5730
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5731
|
-
*/
|
|
5732
|
-
this.CustomValidation = [];
|
|
5819
|
+
super(...arguments);
|
|
5733
5820
|
/**Set List Of Countries As Preferred Countries*/
|
|
5734
5821
|
this.PreferredCountries = [];
|
|
5735
|
-
/** to set type of view if Phonebox is Vertical or Horizontal */
|
|
5736
|
-
this.ViewType = null;
|
|
5737
5822
|
this.ForceDirection = ForceDirection.English;
|
|
5738
5823
|
}
|
|
5739
5824
|
}
|
|
@@ -5741,13 +5826,9 @@ class PhoneOptions {
|
|
|
5741
5826
|
class RangeNumber {
|
|
5742
5827
|
}
|
|
5743
5828
|
|
|
5744
|
-
class TextAreaOptions {
|
|
5829
|
+
class TextAreaOptions extends ControlOptionsBase {
|
|
5745
5830
|
constructor() {
|
|
5746
|
-
|
|
5747
|
-
this.ViewType = null;
|
|
5748
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5749
|
-
*/
|
|
5750
|
-
this.CustomValidation = [];
|
|
5831
|
+
super(...arguments);
|
|
5751
5832
|
/** to set Direction of TextArea if TextArea is Arabic or English */
|
|
5752
5833
|
this.ForceDirection = ForceDirection.English;
|
|
5753
5834
|
}
|
|
@@ -5759,17 +5840,13 @@ var IconPosition;
|
|
|
5759
5840
|
IconPosition[IconPosition["right"] = 2] = "right";
|
|
5760
5841
|
})(IconPosition || (IconPosition = {}));
|
|
5761
5842
|
|
|
5762
|
-
class TextBoxOptions {
|
|
5843
|
+
class TextBoxOptions extends ControlOptionsBase {
|
|
5763
5844
|
constructor() {
|
|
5845
|
+
super(...arguments);
|
|
5764
5846
|
/** set Range Number to Textbox with type number with From-Value and To-value*/
|
|
5765
5847
|
this.NumberRange = new RangeNumber();
|
|
5766
5848
|
/**Prevent AutoComplete of textbox*/
|
|
5767
5849
|
this.AutoComplete = "off";
|
|
5768
|
-
/** to set type of view if textbox is Vertical or Horizontal */
|
|
5769
|
-
this.ViewType = null;
|
|
5770
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
5771
|
-
*/
|
|
5772
|
-
this.CustomValidation = [];
|
|
5773
5850
|
/** to set Direction of textbox if textbox is Arabic or English */
|
|
5774
5851
|
this.ForceDirection = null;
|
|
5775
5852
|
/** to set Language of textbox if textbox language is Arabic or English */
|
|
@@ -5782,9 +5859,9 @@ class TextBoxOptions {
|
|
|
5782
5859
|
}
|
|
5783
5860
|
}
|
|
5784
5861
|
|
|
5785
|
-
class ToggleSlideOptions {
|
|
5862
|
+
class ToggleSlideOptions extends ControlOptionsBase {
|
|
5786
5863
|
constructor() {
|
|
5787
|
-
|
|
5864
|
+
super(...arguments);
|
|
5788
5865
|
this.ForceDirection = ForceDirection.English;
|
|
5789
5866
|
}
|
|
5790
5867
|
}
|
|
@@ -6643,6 +6720,42 @@ RepeaterTableComponent.propDecorators = {
|
|
|
6643
6720
|
options: [{ type: Input }]
|
|
6644
6721
|
};
|
|
6645
6722
|
|
|
6723
|
+
class BBSFDateTimePipe {
|
|
6724
|
+
constructor(datePipe) {
|
|
6725
|
+
this.datePipe = datePipe;
|
|
6726
|
+
}
|
|
6727
|
+
transform(value) {
|
|
6728
|
+
let latest_date = this.datePipe.transform(value, 'dd/MM/yyyy hh:mm a');
|
|
6729
|
+
return latest_date;
|
|
6730
|
+
}
|
|
6731
|
+
}
|
|
6732
|
+
BBSFDateTimePipe.decorators = [
|
|
6733
|
+
{ type: Pipe, args: [{
|
|
6734
|
+
name: 'bbsfDateTime'
|
|
6735
|
+
},] }
|
|
6736
|
+
];
|
|
6737
|
+
BBSFDateTimePipe.ctorParameters = () => [
|
|
6738
|
+
{ type: DatePipe }
|
|
6739
|
+
];
|
|
6740
|
+
|
|
6741
|
+
class BBSFDatePipe {
|
|
6742
|
+
constructor(datePipe) {
|
|
6743
|
+
this.datePipe = datePipe;
|
|
6744
|
+
}
|
|
6745
|
+
transform(value) {
|
|
6746
|
+
let latest_date = this.datePipe.transform(value, 'dd/MM/yyyy');
|
|
6747
|
+
return latest_date;
|
|
6748
|
+
}
|
|
6749
|
+
}
|
|
6750
|
+
BBSFDatePipe.decorators = [
|
|
6751
|
+
{ type: Pipe, args: [{
|
|
6752
|
+
name: 'bbsfDate'
|
|
6753
|
+
},] }
|
|
6754
|
+
];
|
|
6755
|
+
BBSFDatePipe.ctorParameters = () => [
|
|
6756
|
+
{ type: DatePipe }
|
|
6757
|
+
];
|
|
6758
|
+
|
|
6646
6759
|
let options;
|
|
6647
6760
|
let AppInjector;
|
|
6648
6761
|
FullCalendarModule.registerPlugins([
|
|
@@ -6690,7 +6803,9 @@ BBSFControlsModule.decorators = [
|
|
|
6690
6803
|
RepeaterFieldBuilderComponent,
|
|
6691
6804
|
NgTemplateNameDirective,
|
|
6692
6805
|
RepeaterItemFieldComponent,
|
|
6693
|
-
RepeaterTableComponent
|
|
6806
|
+
RepeaterTableComponent,
|
|
6807
|
+
BBSFDateTimePipe,
|
|
6808
|
+
BBSFDatePipe
|
|
6694
6809
|
],
|
|
6695
6810
|
imports: [
|
|
6696
6811
|
CommonModule,
|
|
@@ -6736,9 +6851,10 @@ BBSFControlsModule.decorators = [
|
|
|
6736
6851
|
FullCalendarModule,
|
|
6737
6852
|
TypeaheadModule.forRoot(),
|
|
6738
6853
|
AngularEditorModule,
|
|
6854
|
+
AutocompleteLibModule,
|
|
6739
6855
|
BBSFUtilitiesModule,
|
|
6740
6856
|
InlineSVGModule.forRoot(),
|
|
6741
|
-
SweetAlert2Module
|
|
6857
|
+
SweetAlert2Module,
|
|
6742
6858
|
],
|
|
6743
6859
|
providers: [
|
|
6744
6860
|
ErrorMassageValidation,
|
|
@@ -6749,6 +6865,8 @@ BBSFControlsModule.decorators = [
|
|
|
6749
6865
|
NgbModal,
|
|
6750
6866
|
NgbActiveModal,
|
|
6751
6867
|
DatePipe,
|
|
6868
|
+
BBSFDateTimePipe,
|
|
6869
|
+
BBSFDatePipe,
|
|
6752
6870
|
RenderComponentService,
|
|
6753
6871
|
{ provide: OWL_DATE_TIME_LOCALE, useValue: ɵ0 },
|
|
6754
6872
|
],
|
|
@@ -6784,7 +6902,9 @@ BBSFControlsModule.decorators = [
|
|
|
6784
6902
|
RepeaterFieldBuilderComponent,
|
|
6785
6903
|
NgTemplateNameDirective,
|
|
6786
6904
|
RepeaterItemFieldComponent,
|
|
6787
|
-
RepeaterTableComponent
|
|
6905
|
+
RepeaterTableComponent,
|
|
6906
|
+
BBSFDateTimePipe,
|
|
6907
|
+
BBSFDatePipe
|
|
6788
6908
|
]
|
|
6789
6909
|
},] }
|
|
6790
6910
|
];
|
|
@@ -6805,6 +6925,19 @@ const environment = Object.assign({}, window.Environment);
|
|
|
6805
6925
|
*/
|
|
6806
6926
|
// import 'zone.js/dist/zone-error'; // Included with Angular CLI.
|
|
6807
6927
|
|
|
6928
|
+
class MultilingualControlOptionsBase {
|
|
6929
|
+
constructor() {
|
|
6930
|
+
/** to set type of view if MultipleLanguageText is Vertical or Horizontal */
|
|
6931
|
+
this.ViewType = null;
|
|
6932
|
+
/**To Set Value To MultipleLanguageText with Object From Type "EnglishArabicDTO" */
|
|
6933
|
+
this.Value = new EnglishArabicDTO();
|
|
6934
|
+
/**To Set LanguageMode To MultipleLanguageText */
|
|
6935
|
+
this.LanguageMode = null;
|
|
6936
|
+
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage */
|
|
6937
|
+
this.CustomValidation = [];
|
|
6938
|
+
}
|
|
6939
|
+
}
|
|
6940
|
+
|
|
6808
6941
|
class CustomValidation {
|
|
6809
6942
|
}
|
|
6810
6943
|
class CustomValidator {
|
|
@@ -6819,17 +6952,9 @@ class CustomValidator {
|
|
|
6819
6952
|
}
|
|
6820
6953
|
}
|
|
6821
6954
|
|
|
6822
|
-
class MultiLingualTextBoxOptions {
|
|
6955
|
+
class MultiLingualTextBoxOptions extends MultilingualControlOptionsBase {
|
|
6823
6956
|
constructor() {
|
|
6824
|
-
|
|
6825
|
-
*/
|
|
6826
|
-
this.CustomValidation = [];
|
|
6827
|
-
/**To Set Value To MultipleLanguageText with Object From Type "EnglishArabicDTO" */
|
|
6828
|
-
this.Value = new EnglishArabicDTO();
|
|
6829
|
-
/** to set type of view if textbox is Vertical or Horizontal */
|
|
6830
|
-
this.ViewType = null;
|
|
6831
|
-
/**To Set LanguageMode To MultipleLanguageText */
|
|
6832
|
-
this.LanguageMode = null;
|
|
6957
|
+
super(...arguments);
|
|
6833
6958
|
this.IconPositionEN = IconPosition.left;
|
|
6834
6959
|
this.IconPositionAR = IconPosition.right;
|
|
6835
6960
|
/*multi control placement type*/
|
|
@@ -6840,29 +6965,19 @@ class MultiLingualTextBoxOptions {
|
|
|
6840
6965
|
class Attribute {
|
|
6841
6966
|
}
|
|
6842
6967
|
|
|
6843
|
-
class MultiLingualTextAreaOptions {
|
|
6968
|
+
class MultiLingualTextAreaOptions extends MultilingualControlOptionsBase {
|
|
6844
6969
|
constructor() {
|
|
6845
|
-
|
|
6846
|
-
*/
|
|
6847
|
-
this.CustomValidation = [];
|
|
6848
|
-
/**To Set Value To MultipleLanguageText with Object From Type "EnglishArabicDTO" */
|
|
6849
|
-
this.Value = new EnglishArabicDTO();
|
|
6850
|
-
/** to set type of view if MultilingualTextArea is Vertical or Horizontal */
|
|
6851
|
-
this.ViewType = null;
|
|
6852
|
-
/**To Set LanguageMode To MultipleLanguageText */
|
|
6853
|
-
this.LanguageMode = null;
|
|
6970
|
+
super(...arguments);
|
|
6854
6971
|
/*multi control placement type*/
|
|
6855
6972
|
this.MultiControlPlacementType = null;
|
|
6856
6973
|
}
|
|
6857
6974
|
}
|
|
6858
6975
|
|
|
6859
|
-
class CheckBoxOptions {
|
|
6976
|
+
class CheckBoxOptions extends ControlOptionsBase {
|
|
6860
6977
|
constructor() {
|
|
6978
|
+
super(...arguments);
|
|
6861
6979
|
/**To set value to CheckBox */
|
|
6862
6980
|
this.Value = null;
|
|
6863
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
6864
|
-
*/
|
|
6865
|
-
this.CustomValidation = [];
|
|
6866
6981
|
this.ForceDirection = ForceDirection.English;
|
|
6867
6982
|
}
|
|
6868
6983
|
}
|
|
@@ -6870,30 +6985,18 @@ class CheckBoxOptions {
|
|
|
6870
6985
|
class DropdownListItem {
|
|
6871
6986
|
}
|
|
6872
6987
|
|
|
6873
|
-
class MultiLingualHtmlEditorOptions {
|
|
6988
|
+
class MultiLingualHtmlEditorOptions extends MultilingualControlOptionsBase {
|
|
6874
6989
|
constructor() {
|
|
6875
|
-
|
|
6876
|
-
*/
|
|
6877
|
-
this.CustomValidation = [];
|
|
6878
|
-
/**To Set Value To MultipleLanguageText with Object From Type "EnglishArabicDTO" */
|
|
6879
|
-
this.Value = new EnglishArabicDTO();
|
|
6880
|
-
/** to set type of view if MultipleLanguageText is Vertical or Horizontal */
|
|
6881
|
-
this.ViewType = null;
|
|
6990
|
+
super(...arguments);
|
|
6882
6991
|
/** Set Height For */
|
|
6883
6992
|
this.Height = 150;
|
|
6884
|
-
/**To Set LanguageMode To MultipleLanguageText */
|
|
6885
|
-
this.LanguageMode = null;
|
|
6886
6993
|
}
|
|
6887
6994
|
}
|
|
6888
6995
|
|
|
6889
|
-
class ProfileImageUploadOptions {
|
|
6996
|
+
class ProfileImageUploadOptions extends ControlOptionsBase {
|
|
6890
6997
|
constructor() {
|
|
6891
|
-
|
|
6892
|
-
*/
|
|
6998
|
+
super(...arguments);
|
|
6893
6999
|
this.AllowDropZone = false;
|
|
6894
|
-
this.CustomValidation = [];
|
|
6895
|
-
/** to set type of view if FileInput is Vertical or Horizontal */
|
|
6896
|
-
this.ViewType = null;
|
|
6897
7000
|
/** Set List of Custom Attribute to FileInput */
|
|
6898
7001
|
this.ImageUploadAcceptsTypes = [ImageType.ImageTypes];
|
|
6899
7002
|
}
|
|
@@ -6927,8 +7030,9 @@ class UploadPersonalImage {
|
|
|
6927
7030
|
}
|
|
6928
7031
|
}
|
|
6929
7032
|
|
|
6930
|
-
class CalendarOptions {
|
|
7033
|
+
class CalendarOptions extends ControlOptionsBase {
|
|
6931
7034
|
constructor() {
|
|
7035
|
+
super(...arguments);
|
|
6932
7036
|
/** Represent DefaultView Of Calendar*/
|
|
6933
7037
|
this.DefaultView = CalendarView.Month;
|
|
6934
7038
|
/** Represent CalendarViews Of Calendar*/
|
|
@@ -6946,21 +7050,15 @@ class CalendarOptions {
|
|
|
6946
7050
|
class CalendarEventDTO {
|
|
6947
7051
|
}
|
|
6948
7052
|
|
|
6949
|
-
class AutocompleteOptions {
|
|
7053
|
+
class AutocompleteOptions extends ControlOptionsBase {
|
|
6950
7054
|
constructor() {
|
|
6951
|
-
|
|
6952
|
-
|
|
6953
|
-
*/
|
|
7055
|
+
super(...arguments);
|
|
7056
|
+
/**Represent classes to textbox that allow us to select the AutoComplete by jquery or javascript */
|
|
6954
7057
|
this.ValidationToken = null;
|
|
6955
7058
|
/**To set value to textbox */
|
|
6956
7059
|
this.Value = null;
|
|
6957
7060
|
/** set Range Number to Textbox with type number with From-Value and To-value*/
|
|
6958
7061
|
this.NumberRange = new RangeNumber();
|
|
6959
|
-
/** to set type of view if textbox is Vertical or Horizontal */
|
|
6960
|
-
this.ViewType = null;
|
|
6961
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
6962
|
-
*/
|
|
6963
|
-
this.CustomValidation = [];
|
|
6964
7062
|
/** to set Direction of textbox if textbox is Arabic or English */
|
|
6965
7063
|
this.ForceDirection = ForceDirection.English;
|
|
6966
7064
|
/** allow add value of AutoComplete dosn't exist in list*/
|
|
@@ -6975,15 +7073,9 @@ class AutocompleteOptions {
|
|
|
6975
7073
|
class TagsInputDTO {
|
|
6976
7074
|
}
|
|
6977
7075
|
|
|
6978
|
-
class TagsInputOptions {
|
|
7076
|
+
class TagsInputOptions extends ControlOptionsBase {
|
|
6979
7077
|
constructor() {
|
|
6980
|
-
|
|
6981
|
-
this.Value = null;
|
|
6982
|
-
/** to set type of view if tagsinput is Vertical or Horizontal */
|
|
6983
|
-
this.ViewType = null;
|
|
6984
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
6985
|
-
*/
|
|
6986
|
-
this.CustomValidation = [];
|
|
7078
|
+
super(...arguments);
|
|
6987
7079
|
/** to set Direction of tagsinput if tagsinput is Arabic or English */
|
|
6988
7080
|
this.ForceDirection = ForceDirection.English;
|
|
6989
7081
|
/**Remove Last When User Click On Backspace */
|
|
@@ -7068,13 +7160,7 @@ class PagingOptions {
|
|
|
7068
7160
|
}
|
|
7069
7161
|
}
|
|
7070
7162
|
|
|
7071
|
-
class RadioButtonOptions {
|
|
7072
|
-
constructor() {
|
|
7073
|
-
this.ViewType = null;
|
|
7074
|
-
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage
|
|
7075
|
-
*/
|
|
7076
|
-
this.CustomValidation = [];
|
|
7077
|
-
}
|
|
7163
|
+
class RadioButtonOptions extends ControlOptionsBase {
|
|
7078
7164
|
}
|
|
7079
7165
|
|
|
7080
7166
|
class RadioButtonItem {
|
|
@@ -7479,5 +7565,5 @@ var FileType;
|
|
|
7479
7565
|
* Generated bundle index. Do not edit.
|
|
7480
7566
|
*/
|
|
7481
7567
|
|
|
7482
|
-
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, LanguageValidation, 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, RepeaterTableComponent, SaveDTO, SelectMode, StartView, Style, StyleConfirmationMode, TagsInputComponent, TagsInputDTO, TagsInputOptions, TextAreaComponent, TextAreaOptions, TextBoxOptions, TextboxComponent, ToggleSlideOptions, ToggleslideComponent, UploadPersonalImage, environment, options, ɵ0 };
|
|
7568
|
+
export { AppInjector, Attribute, AutocompleteDTO, AutocompleteOptions, AutocompleteTextBoxComponent, BBSFControlsModule, BBSFDatePipe, BBSFDateTimePipe, CalendarComponent, CalendarEventDTO, CalendarOptions, CalendarView, CancelDTO, CheckBoxComponent, CheckBoxOptions, ConfirmationModalComponent, ConfirmationModalOptions, ControlLayout, ControlOptionsBase, 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, LanguageValidation, MapAutoCompleteComponent, MapAutoCompleteOptions, MapAutocompleteDTO, MenuListType, Misc, MultiLingualHtmlEditorComponent, MultiLingualHtmlEditorOptions, MultiLingualTextAreaComponent, MultiLingualTextAreaOptions, MultiLingualTextBoxComponent, MultiLingualTextBoxOptions, MultilingualControlOptionsBase, 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, RepeaterTableComponent, SaveDTO, SelectMode, StartView, Style, StyleConfirmationMode, TagsInputComponent, TagsInputDTO, TagsInputOptions, TextAreaComponent, TextAreaOptions, TextBoxOptions, TextboxComponent, ToggleSlideOptions, ToggleslideComponent, UploadPersonalImage, environment, options, ɵ0 };
|
|
7483
7569
|
//# sourceMappingURL=bnsights-bbsf-controls.js.map
|