@bnsights/bbsf-controls 1.0.40 → 1.0.43
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 +13 -0
- package/bnsights-bbsf-controls-1.0.43.tgz +0 -0
- package/bnsights-bbsf-controls.metadata.json +1 -1
- package/bundles/bnsights-bbsf-controls.umd.js +109 -47
- package/bundles/bnsights-bbsf-controls.umd.js.map +1 -1
- package/esm2015/lib/Shared/Enums/Enums.js +2 -1
- package/esm2015/lib/Shared/Enums/FileType.js +2 -2
- package/esm2015/lib/Shared/Models/ControlOptionsBase.js +3 -1
- package/esm2015/lib/Shared/Models/FileDTO.js +1 -1
- package/esm2015/lib/Shared/Models/MultilingualTextBoxOptions.js +3 -1
- package/esm2015/lib/Shared/Models/MultipleFileUploadModel.js +1 -1
- package/esm2015/lib/Shared/Models/TagsInputOptions.js +1 -3
- package/esm2015/lib/Shared/Models/TextBoxOptions.js +3 -3
- package/esm2015/lib/Shared/Models/datePickerOptions.js +3 -1
- package/esm2015/lib/controls/DateTimePicker/DateTimePicker.component.js +2 -2
- package/esm2015/lib/controls/FileUplaod/FileUplaod.component.js +50 -33
- package/esm2015/lib/controls/Form/Form.component.js +13 -2
- package/esm2015/lib/controls/MultiLingualTextBox/MultiLingualTextBox.component.js +4 -4
- package/esm2015/lib/controls/Paging/Paging.component.js +29 -2
- package/esm2015/lib/controls/TagsInput/TagsInput.component.js +5 -1
- package/esm2015/lib/controls/TextBox/TextBox.component.js +2 -2
- package/esm2015/lib/controls/Toggleslide/toggleslide.component.js +2 -5
- package/fesm2015/bnsights-bbsf-controls.js +108 -47
- package/fesm2015/bnsights-bbsf-controls.js.map +1 -1
- package/lib/Shared/Enums/Enums.d.ts +2 -1
- package/lib/Shared/Enums/FileType.d.ts +1 -1
- package/lib/Shared/Models/FileDTO.d.ts +1 -1
- package/lib/Shared/Models/MultilingualTextBoxOptions.d.ts +2 -0
- package/lib/Shared/Models/MultipleFileUploadModel.d.ts +1 -1
- package/lib/Shared/Models/TagsInputOptions.d.ts +2 -0
- package/lib/Shared/Models/TextBoxOptions.d.ts +1 -1
- package/lib/controls/FileUplaod/FileUplaod.component.d.ts +4 -1
- package/lib/controls/Form/Form.component.d.ts +4 -1
- package/lib/controls/Paging/Paging.component.d.ts +3 -0
- package/package.json +2 -2
- package/bnsights-bbsf-controls-1.0.40.tgz +0 -0
|
@@ -556,7 +556,7 @@
|
|
|
556
556
|
DateInputComponent.decorators = [
|
|
557
557
|
{ type: i0.Component, args: [{
|
|
558
558
|
selector: 'BBSF-DateTimePicker',
|
|
559
|
-
template: "<div class=\"b-control b-date-picker\">\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 <div class=\"input-group\">\r\n <input autocomplete=\"off\" (dateTimeChange)=\"onDateSelect($event)\"\r\n dir=\"{{options.ForceDirection==2?'rtl':''}}\"\r\n class=\"form-control bnsights-control {{options.ExtraClasses}} \"\r\n [ngClass]=\"(options.ViewType==1)?'':'col-md-9'\" aria-describedby=\"email-error\" aria-invalid=\"true\"\r\n formControlName=\"{{options.Name}}\" [owlDateTime]=\"dt1\" [owlDateTimeTrigger]=\"dt1\"\r\n [class.is-invalid]=\"DatePickerFormControl.invalid && DatePickerFormControl.touched\"\r\n [min]=\"options.StartDate\" [max]=\"options.EndDate\" [selectMode]=\"getSelectMode(options.SelectMode)\"\r\n placeholder=\"{{options.Placeholder}}\" id=\"{{options.Name}}\" #Dateinput>\r\n\r\n <owl-date-time [pickerType]=\"getPickerType(options.PickerType)\"\r\n [startView]=\"getStartView(options.StartView)\" [firstDayOfWeek]=\"options.FirstDayOfWeek\"\r\n [hour12Timer]=\"options.Hour12Timer\" #dt1></owl-date-time>\r\n \r\n <div class=\"input-group-append\">\r\n <span class=\"input-group-text\" [owlDateTimeTrigger]=\"dt1\">\r\n <span class=\"svg-icon\">\r\n <svg id=\"Group_356\" data-name=\"Group 356\" xmlns=\"http://www.w3.org/2000/svg\" width=\"15\" height=\"15\" viewBox=\"0 0 48 48\">\r\n <path id=\"Path_6737\" data-name=\"Path 6737\" d=\"M11.583,1a1,1,0,0,0-2,0V5.7h2Z\" style=\"\"></path>\r\n <path id=\"Path_6738\" data-name=\"Path 6738\" d=\"M38.417,1a1,1,0,0,0-2,0V5.7h2Z\"></path>\r\n <path id=\"Path_6739\" data-name=\"Path 6739\" d=\"M0,43.146C0,45.822,1.826,48,4.07,48H43.928C46.174,48,48,45.822,48,43.146V17.121H0Z\" fill=\"#d5d5d5\"></path>\r\n <path id=\"Path_6740\" data-name=\"Path 6740\" d=\"M43.929,5.7H38.417v5.512a1,1,0,1,1-2,0V5.7H11.583v5.512a1,1,0,1,1-2,0V5.7H4.07C1.826,5.7,0,7.877,0,10.555v4.566H48V10.555C48,7.877,46.174,5.7,43.929,5.7Z\" fill=\"#595959\"></path>\r\n </svg>\r\n </span>\r\n </span>\r\n <!--<span class=\"input-group-text\" *ngIf=\"options.EnableCopyToClipboard\"\r\n (click)=\"copyInputMessage(Dateinput)\">\r\n <i class=\"fas fa-copy\"></i>\r\n </span>-->\r\n </div>\r\n </div>\r\n\r\n <div class=\"text-danger Required-text\"\r\n *ngIf=\"(DatePickerFormControl.invalid && DatePickerFormControl.touched)\">\r\n {{getErrorValidation(DatePickerFormControl.errors|keyvalue)}}\r\n </div>\r\n\r\n <div class=\"control-desc\"*ngIf=\"options.LabelDescription!=null\">{{options.LabelDescription}}</div>\r\n \r\n <div *ngIf=\"(group.valid&&group.dirty&&group.touched )||(group.untouched&&group.invalid&&group.dirty) \">{{resetError()}}</div>\r\n\r\n\r\n\r\n </div>\r\n\r\n </div>\r\n</div>\r\n",
|
|
559
|
+
template: "<div class=\"b-control b-date-picker\">\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 <div class=\"input-group\">\r\n <input autocomplete=\"off\" (dateTimeChange)=\"onDateSelect($event)\"\r\n dir=\"{{options.ForceDirection==2?'rtl':''}}\"\r\n class=\"form-control bnsights-control {{options.ExtraClasses}} \"\r\n [ngClass]=\"(options.ViewType==1)?'':'col-md-9'\" aria-describedby=\"email-error\" aria-invalid=\"true\"\r\n formControlName=\"{{options.Name}}\" [owlDateTime]=\"dt1\" [owlDateTimeTrigger]=\"dt1\"\r\n [class.is-invalid]=\"DatePickerFormControl.invalid && DatePickerFormControl.touched\"\r\n [min]=\"options.StartDate\" [max]=\"options.EndDate\" [hour12Timer]=\"options.Hour12Timer\" [selectMode]=\"getSelectMode(options.SelectMode)\"\r\n placeholder=\"{{options.Placeholder}}\" id=\"{{options.Name}}\" #Dateinput>\r\n\r\n <owl-date-time [pickerType]=\"getPickerType(options.PickerType)\"\r\n [startView]=\"getStartView(options.StartView)\" [firstDayOfWeek]=\"options.FirstDayOfWeek\"\r\n [hour12Timer]=\"options.Hour12Timer\" #dt1></owl-date-time>\r\n \r\n <div class=\"input-group-append\">\r\n <span class=\"input-group-text\" [owlDateTimeTrigger]=\"dt1\">\r\n <span class=\"svg-icon\">\r\n <svg id=\"Group_356\" data-name=\"Group 356\" xmlns=\"http://www.w3.org/2000/svg\" width=\"15\" height=\"15\" viewBox=\"0 0 48 48\">\r\n <path id=\"Path_6737\" data-name=\"Path 6737\" d=\"M11.583,1a1,1,0,0,0-2,0V5.7h2Z\" style=\"\"></path>\r\n <path id=\"Path_6738\" data-name=\"Path 6738\" d=\"M38.417,1a1,1,0,0,0-2,0V5.7h2Z\"></path>\r\n <path id=\"Path_6739\" data-name=\"Path 6739\" d=\"M0,43.146C0,45.822,1.826,48,4.07,48H43.928C46.174,48,48,45.822,48,43.146V17.121H0Z\" fill=\"#d5d5d5\"></path>\r\n <path id=\"Path_6740\" data-name=\"Path 6740\" d=\"M43.929,5.7H38.417v5.512a1,1,0,1,1-2,0V5.7H11.583v5.512a1,1,0,1,1-2,0V5.7H4.07C1.826,5.7,0,7.877,0,10.555v4.566H48V10.555C48,7.877,46.174,5.7,43.929,5.7Z\" fill=\"#595959\"></path>\r\n </svg>\r\n </span>\r\n </span>\r\n <!--<span class=\"input-group-text\" *ngIf=\"options.EnableCopyToClipboard\"\r\n (click)=\"copyInputMessage(Dateinput)\">\r\n <i class=\"fas fa-copy\"></i>\r\n </span>-->\r\n </div>\r\n </div>\r\n\r\n <div class=\"text-danger Required-text\"\r\n *ngIf=\"(DatePickerFormControl.invalid && DatePickerFormControl.touched)\">\r\n {{getErrorValidation(DatePickerFormControl.errors|keyvalue)}}\r\n </div>\r\n\r\n <div class=\"control-desc\"*ngIf=\"options.LabelDescription!=null\">{{options.LabelDescription}}</div>\r\n \r\n <div *ngIf=\"(group.valid&&group.dirty&&group.touched )||(group.untouched&&group.invalid&&group.dirty) \">{{resetError()}}</div>\r\n\r\n\r\n\r\n </div>\r\n\r\n </div>\r\n</div>\r\n",
|
|
560
560
|
styles: [".example-form{min-width:150px;max-width:500px;width:100%}.example-full-width{width:100%}\n"]
|
|
561
561
|
},] }
|
|
562
562
|
];
|
|
@@ -653,6 +653,7 @@
|
|
|
653
653
|
this.markAllAsTouched = false;
|
|
654
654
|
this.validationRules = [];
|
|
655
655
|
this.validationRulesasync = [];
|
|
656
|
+
this.deletedFiles = [];
|
|
656
657
|
this.resetError = function () {
|
|
657
658
|
_this.controlValidationService.RemoveGlobalError();
|
|
658
659
|
};
|
|
@@ -699,33 +700,43 @@
|
|
|
699
700
|
else {
|
|
700
701
|
if (this.options.IsMultipleFile == true) {
|
|
701
702
|
var files = [];
|
|
702
|
-
this.multipleFileUploadModel = this.options.Value;
|
|
703
|
+
this.multipleFileUploadModel.ExistingFiles = this.options.Value.ExistingFiles;
|
|
704
|
+
this.multipleFileUploadModel.UploadedFiles = [];
|
|
703
705
|
for (var index = 0; index < this.options.Value.ExistingFiles.length; index++) {
|
|
704
706
|
var element = this.options.Value.ExistingFiles[index];
|
|
705
|
-
|
|
706
|
-
|
|
707
|
-
|
|
708
|
-
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
|
|
713
|
-
blob
|
|
714
|
-
blob.
|
|
715
|
-
blob.
|
|
716
|
-
|
|
707
|
+
var bytes = new Uint8Array(element.Bytes);
|
|
708
|
+
var base64 = btoa(String.fromCharCode(null, bytes));
|
|
709
|
+
this.FileLikeObject = new ng2FileUpload.FileLikeObject({
|
|
710
|
+
name: element.NameWithExtension,
|
|
711
|
+
type: element.MimeType,
|
|
712
|
+
rawFile: base64,
|
|
713
|
+
});
|
|
714
|
+
// let blob: any;
|
|
715
|
+
// blob = new Blob(['']) as any;
|
|
716
|
+
// blob.name = element.FileName;
|
|
717
|
+
// blob.lastModifiedDate = null;
|
|
718
|
+
// blob.webkitRelativePath = '';
|
|
719
|
+
var file = this.FileLikeObject;
|
|
720
|
+
file.url = element.FileURL;
|
|
721
|
+
files.push(file);
|
|
717
722
|
}
|
|
718
723
|
this.uploader.addToQueue(files);
|
|
724
|
+
console.log(this.uploader.queue);
|
|
719
725
|
}
|
|
720
726
|
else {
|
|
721
|
-
var element = this.options.Value
|
|
727
|
+
var element = this.options.Value;
|
|
728
|
+
var bytes = new Uint8Array(element.Bytes);
|
|
729
|
+
var base64 = btoa(String.fromCharCode(null, bytes));
|
|
722
730
|
this.FileLikeObject = new ng2FileUpload.FileLikeObject({
|
|
723
|
-
name: element.
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
rawFile: element.FileBase64,
|
|
731
|
+
name: element.NameWithExtension,
|
|
732
|
+
type: element.MimeType,
|
|
733
|
+
rawFile: base64,
|
|
727
734
|
});
|
|
728
|
-
this.
|
|
735
|
+
this.file = element;
|
|
736
|
+
var file = this.FileLikeObject;
|
|
737
|
+
file.url = element.FileURL;
|
|
738
|
+
this.uploader.addToQueue([file]);
|
|
739
|
+
console.log(this.uploader.queue);
|
|
729
740
|
}
|
|
730
741
|
}
|
|
731
742
|
if (this.options.LabelKey != null && this.options.LabelKey != "")
|
|
@@ -853,12 +864,16 @@
|
|
|
853
864
|
var fileObject = file.rawFile;
|
|
854
865
|
reader_1.readAsDataURL(fileObject);
|
|
855
866
|
reader_1.onload = function () {
|
|
867
|
+
var existingID_GUID = null;
|
|
868
|
+
if (!_this.options.IsMultipleFile && _this.file)
|
|
869
|
+
existingID_GUID = _this.file.NameWithExtension == file.name ? _this.file.ID_GUID : null;
|
|
856
870
|
var AddedFile = {
|
|
857
871
|
FileName: file.name,
|
|
858
872
|
FileType: file.type,
|
|
859
873
|
FileBase64: reader_1.result.toString().split(',')[1],
|
|
860
874
|
FileSizeInMB: ((file.size / 1000) / 1000),
|
|
861
|
-
NameWithExtension: file.name
|
|
875
|
+
NameWithExtension: file.name,
|
|
876
|
+
ID_GUID: existingID_GUID
|
|
862
877
|
};
|
|
863
878
|
if (_this.options.IsMultipleFile == false) {
|
|
864
879
|
_this.fileUploadModel = new FileUploadModel();
|
|
@@ -904,33 +919,35 @@
|
|
|
904
919
|
else {
|
|
905
920
|
if (this.options.Value != null && this.options.Value != undefined) {
|
|
906
921
|
if (this.options.Value.CorrelationID_GUID == null) {
|
|
922
|
+
this.deletedFiles = [];
|
|
907
923
|
this.multipleFileUploadModel.RemovedFiles = [];
|
|
908
924
|
}
|
|
909
925
|
else {
|
|
910
926
|
if (this.multipleFileUploadModel.RemovedFiles.length == 0) {
|
|
911
927
|
var FileObject_1 = item.file.rawFile;
|
|
912
|
-
var
|
|
913
|
-
this.
|
|
914
|
-
this.
|
|
928
|
+
var DeletedItem = this.multipleFileUploadModel.ExistingFiles.filter(function (Object) { return Object.NameWithExtension == FileObject_1.name; })[0];
|
|
929
|
+
this.multipleFileUploadModel.ExistingFiles = this.multipleFileUploadModel.ExistingFiles.filter(function (Object) { return Object.NameWithExtension != FileObject_1.name; });
|
|
930
|
+
this.deletedFiles.push(DeletedItem);
|
|
931
|
+
this.multipleFileUploadModel.RemovedFiles.push(DeletedItem.ID_GUID);
|
|
915
932
|
}
|
|
916
933
|
else {
|
|
917
934
|
var FileObject_2 = item.file.rawFile;
|
|
918
|
-
var deletedList = this.
|
|
935
|
+
var deletedList = this.deletedFiles.filter(function (Object) { return Object.NameWithExtension == FileObject_2.name; });
|
|
919
936
|
if (deletedList.length == 0 || deletedList == undefined) {
|
|
920
|
-
var
|
|
921
|
-
this.
|
|
922
|
-
this.
|
|
937
|
+
var DeletedItem = this.multipleFileUploadModel.ExistingFiles.filter(function (Object) { return Object.NameWithExtension == FileObject_2.name; })[0];
|
|
938
|
+
this.multipleFileUploadModel.ExistingFiles = this.multipleFileUploadModel.ExistingFiles.filter(function (Object) { return Object.NameWithExtension != FileObject_2.name; });
|
|
939
|
+
this.deletedFiles.push(DeletedItem);
|
|
940
|
+
this.multipleFileUploadModel.RemovedFiles.push(DeletedItem.ID_GUID);
|
|
923
941
|
}
|
|
924
942
|
}
|
|
925
943
|
}
|
|
926
944
|
}
|
|
927
945
|
else {
|
|
946
|
+
this.deletedFiles = [];
|
|
928
947
|
this.multipleFileUploadModel.RemovedFiles = [];
|
|
929
948
|
}
|
|
930
|
-
|
|
931
|
-
|
|
932
|
-
this.multipleFileUploadModel.UploadedFiles = ItemList;
|
|
933
|
-
if ((ItemList == null || ItemList == []) && this.options.IsRequired) {
|
|
949
|
+
this.multipleFileUploadModel.UploadedFiles = this.multipleFileUploadModel.UploadedFiles.filter(function (Object) { return Object.NameWithExtension != item._file.name; });
|
|
950
|
+
if ((this.multipleFileUploadModel.UploadedFiles == null || this.multipleFileUploadModel.UploadedFiles == []) && this.options.IsRequired) {
|
|
934
951
|
this.fileUploadFormControl.markAsTouched();
|
|
935
952
|
this.fileUploadFormControl.invalid;
|
|
936
953
|
}
|
|
@@ -944,7 +961,7 @@
|
|
|
944
961
|
FileUploadComponent.decorators = [
|
|
945
962
|
{ type: i0.Component, args: [{
|
|
946
963
|
selector: 'BBSF-FileUplaod',
|
|
947
|
-
template: "\r\n<div class=\"b-control b-fileupload\">\r\n
|
|
964
|
+
template: "\r\n<div class=\"b-control b-fileupload\">\r\n <div class=\"form-group row validate is-invalid\" [formGroup]=\"group\">\r\n <label class=\"col-form-label col-sm-12 mb-2\" [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\r\n <ejs-tooltip id=\"tooltip\" content='{{ValidationMessage}}' tipPointerPosition='Middle'\r\n *ngIf=\"(ValidationMessage!=null&&ValidationMessage!='')\">\r\n <i class=\"fa fa-info-circle\" data-plugin=\"tooltip\" data-html=\"true\">\r\n </i>\r\n </ejs-tooltip>\r\n\r\n\r\n </label>\r\n\r\n <div class=\"col-sm-12\" [ngClass]=\"(options.ViewType==1)?'':'col-md-9'\">\r\n\r\n <div>\r\n\r\n <div ng2FileDrop *ngIf=\"(options.IsDropZone)&&(!((options.IsMultipleFile==false)&&(uploader.queue.length)>0))\"\r\n [ngClass]=\"{'another-file-over-class': hasAnotherDropZoneOver}\" (onFileDrop)=\"onFileChange()\"\r\n (fileOver)=\"fileOverAnother($event)\" [uploader]=\"uploader\" [accept]=\"AcceptedType\"\r\n class=\"well my-drop-zoneform-control bnsights-control {{options.ExtraClasses}}\"\r\n (change)=\"onFileChange()\" id=\"{{options.Name}}\" multiple=\"{{options.IsMultipleFile?'multiple':''}}\"\r\n aria-describedby=\"email-error\" aria-invalid=\"true\" type=\"file\" formControlName=\"{{options.Name}}\"\r\n id=\"options.Name\" #fileInput\r\n [class.is-invalid]=\"fileUploadFormControl.invalid && fileUploadFormControl.touched\">\r\n\r\n\r\n <div class=\"dragndrop text-center\">\r\n <p class=\"drag-icon mb-3\">\r\n <i class=\"fas fa-cloud-download-alt\"></i>\r\n </p>\r\n <p>\r\n {{UtilityService.getResourceValue(\"DragAndDropHere\")}}\r\n </p>\r\n </div>\r\n </div>\r\n\r\n <div *ngIf=\"(!options.IsDropZone)&&!((uploader.queue.length>0)&&(!options.IsMultipleFile))\">\r\n <button type=\"button\" class=\"btn btn-light btn-sm file-fake-input mb-3\" (click)=\"fileInput.click();\">\r\n <i class=\"icon fa fa-cloud-upload-alt\"></i>\r\n {{UtilityService.getResourceValue(\"Upload\")}}\r\n </button>\r\n <input ng2FileSelect [uploader]=\"uploader\" [accept]=\"AcceptedType\"\r\n class=\"fileSelector customFileUploadPlacment hidden v-required-multiplefiles d-none\" id=\"file\"\r\n multiple=\"{{options.IsMultipleFile?'multiple':''}}\" name=\"file\" type=\"file\" value=\"\"\r\n autocomplete=\"off\" (change)=\"onFileChange()\" [ngClass]=\"(options.ViewType==1)?'':'col-md-9'\"\r\n id=\"{{options.Name}}\" aria-describedby=\"email-error\" aria-invalid=\"true\" type=\"file\"\r\n formControlName=\"{{options.Name}}\" id=\"options.Name\" #fileInput\r\n [class.is-invalid]=\"fileUploadFormControl.invalid && fileUploadFormControl.touched\">\r\n </div>\r\n\r\n </div>\r\n\r\n <div *ngFor=\"let item of uploader.queue\">\r\n <div class=\"fileInfoContainer ui-file btn-group mb-3\">\r\n <a href=\"{{ item?._file?.url}}\" download>\r\n <button type=\"button\" class=\"download-link btn btn-light btn-sm\">\r\n <span>\r\n <i class=\"icon fa fa-download\"></i>\r\n <span class=\"upload-file-info\">{{ item?.file?.name }}</span>\r\n </span>\r\n </button>\r\n </a>\r\n <span class=\"removeUIFile remove-link btn btn-xs btn-danger d-flex align-items-center justify-content-center\"\r\n (click)=\"item.remove();removeFromControlValue(item)\">\r\n <i class=\"fa fa-times px-0\"></i>\r\n </span>\r\n </div>\r\n </div>\r\n\r\n\r\n <div class=\"text-danger Required-text\" *ngIf=\"(fileUploadFormControl.invalid && fileUploadFormControl.touched)\">\r\n {{getErrorValidation(fileUploadFormControl.errors|keyvalue)}}\r\n </div>\r\n\r\n\r\n\r\n <div class=\"col-md-9 col-sm-9\">\r\n\r\n <div>\r\n <label>\r\n {{options.LabelDescription}}\r\n </label>\r\n </div>\r\n\r\n\r\n </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\r\n </div>\r\n\r\n </div>\r\n</div>\r\n",
|
|
948
965
|
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%}\n"]
|
|
949
966
|
},] }
|
|
950
967
|
];
|
|
@@ -1357,7 +1374,7 @@
|
|
|
1357
1374
|
this.CurrentLanguage = translate.currentLang != undefined ? translate.currentLang : translate.defaultLang;
|
|
1358
1375
|
}
|
|
1359
1376
|
MultiLingualTextBoxComponent.prototype.getCustomErrorsMassages = function () {
|
|
1360
|
-
this.ArabicLetterOnly = this.UtilityService.getResourceValue("
|
|
1377
|
+
this.ArabicLetterOnly = this.UtilityService.getResourceValue("ArabicIsRequiredAndOnly50CharactersEnglish");
|
|
1361
1378
|
this.EnglishLetterOnly = this.UtilityService.getResourceValue("EnglishLetterOnly");
|
|
1362
1379
|
};
|
|
1363
1380
|
MultiLingualTextBoxComponent.prototype.ngOnInit = function () {
|
|
@@ -1417,7 +1434,7 @@
|
|
|
1417
1434
|
}
|
|
1418
1435
|
this.showInputUsingLanguageMode();
|
|
1419
1436
|
this.ArabicValidationRules.push(forms.Validators.compose([
|
|
1420
|
-
this.controlUtility.arabicValidator({
|
|
1437
|
+
this.controlUtility.arabicValidator({ ArabicIsRequiredAndOnly50CharactersEnglish: this.ArabicLetterOnly }),
|
|
1421
1438
|
]));
|
|
1422
1439
|
this.EnglishValidationRules.push(forms.Validators.compose([
|
|
1423
1440
|
this.controlUtility.patternValidator(/^[\x00-\x7F]*$/, { EnglishLetterOnly: this.EnglishLetterOnly }),
|
|
@@ -1682,7 +1699,7 @@
|
|
|
1682
1699
|
MultiLingualTextBoxComponent.decorators = [
|
|
1683
1700
|
{ type: i0.Component, args: [{
|
|
1684
1701
|
selector: 'BBSF-MultiLingualTextBox',
|
|
1685
|
-
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)=\"onEnglishFocus(true)\" (focusout)=\"onEnglishFocus(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 <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 <!-- <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)=\"onArabicFocus(true)\" (focusout)=\"onArabicFocus(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 *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=\"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",
|
|
1702
|
+
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)=\"onEnglishFocus(true)\" (focusout)=\"onEnglishFocus(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 autocomplete=\"{{options.AutoComplete}}\"\r\n id=\"{{options.Name}}.English\"\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 <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 <!-- <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)=\"onArabicFocus(true)\" (focusout)=\"onArabicFocus(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 autocomplete=\"{{options.AutoComplete}}\"\r\n id=\"{{options.Name}}.Arabic\"\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 *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=\"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",
|
|
1686
1703
|
styles: [".example-form{min-width:150px;max-width:500px;width:100%}.example-full-width{width:100%}\n"]
|
|
1687
1704
|
},] }
|
|
1688
1705
|
];
|
|
@@ -2733,9 +2750,6 @@
|
|
|
2733
2750
|
this.SlideValue = this.options.Value == undefined ? false : this.options.Value;
|
|
2734
2751
|
if (!this.options.ViewType)
|
|
2735
2752
|
this.options.ViewType = this.globalSettings.ViewType;
|
|
2736
|
-
if (this.options.IsDisabled) {
|
|
2737
|
-
this.ToggleslideFormControl.disable();
|
|
2738
|
-
}
|
|
2739
2753
|
if (this.options.LabelKey != null && this.options.LabelKey != "")
|
|
2740
2754
|
this.options.LabelValue = this.UtilityService.getResourceValue(this.options.LabelKey);
|
|
2741
2755
|
};
|
|
@@ -2773,7 +2787,7 @@
|
|
|
2773
2787
|
ToggleslideComponent.decorators = [
|
|
2774
2788
|
{ type: i0.Component, args: [{
|
|
2775
2789
|
selector: 'BBSF-Toggleslide',
|
|
2776
|
-
template: "<div class=\"b-control b-toggle-slide\">\r\n <div class=\"form-group 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 </label>\r\n <mat-slide-toggle [(ngModel)]=\"SlideValue\" dir=\"{{options.ForceDirection==2?'rtl':''}}\" [cssClass]=\"(options.ViewType==1)?'':'col-md-9'\"\r\n formControlName=\"{{options.Name}}\" disableRipple=\"true\"\
|
|
2790
|
+
template: "<div class=\"b-control b-toggle-slide\">\r\n <div class=\"form-group 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 </label>\r\n <mat-slide-toggle [(ngModel)]=\"SlideValue\" dir=\"{{options.ForceDirection==2?'rtl':''}}\" [cssClass]=\"(options.ViewType==1)?'':'col-md-9'\"\r\n formControlName=\"{{options.Name}}\" disableRipple=\"true\" disabled=\"{{options.IsDisabled}}\" (change)=\"changeValueToggle()\">\r\n </mat-slide-toggle>\r\n \r\n </div>\r\n</div>\r\n",
|
|
2777
2791
|
styles: [".mat-slide-toggle{padding-left:10px}.mat-slide-toggle.mat-checked .mat-slide-toggle-bar{background-color:#e3f4fe}.mat-slide-toggle-thumb-container{width:25px;height:25px;top:1px;left:-2px}.mat-slide-toggle.mat-checked .mat-slide-toggle-thumb{background-color:#009ef7}.mat-slide-toggle-thumb{height:25px;width:25px;border-radius:50%}.mat-slide-toggle.mat-checked .mat-ripple-element{background-color:#009ef7}.mat-slide-toggle-bar{width:55px;height:30px;border-radius:3.25rem}\n"]
|
|
2778
2792
|
},] }
|
|
2779
2793
|
];
|
|
@@ -4434,6 +4448,8 @@
|
|
|
4434
4448
|
this.options.ViewType = this.globalSettings.ViewType;
|
|
4435
4449
|
if (this.options.LabelKey != null && this.options.LabelKey != "")
|
|
4436
4450
|
this.options.LabelValue = this.UtilityService.getResourceValue(this.options.LabelKey);
|
|
4451
|
+
if (!this.options.NoResultText)
|
|
4452
|
+
this.options.NoResultText = this.UtilityService.getResourceValue("NoItemsMatch");
|
|
4437
4453
|
// this.group.addControl(this.options.Name, new FormControl(''));
|
|
4438
4454
|
// this.TagInputControl = this.group.controls[this.options.Name]; // new FormControl('',validationRules);
|
|
4439
4455
|
this.TagsFormControl.setValue(this.options.Value);
|
|
@@ -4490,6 +4506,8 @@
|
|
|
4490
4506
|
};
|
|
4491
4507
|
TagsInputComponent.prototype.searchFunctionFactory = function (Text) {
|
|
4492
4508
|
var Url = this.options.ActionURL + "?" + this.options.QueryParamName + "=" + Text + "&" + this.options.SelectedItemsParamName + "=" + this.SelectedId;
|
|
4509
|
+
if (this.options.ExtraFilters)
|
|
4510
|
+
Url = Url + ("&" + this.options.ExtraFilters);
|
|
4493
4511
|
var requestOptionsModel = new bbsfUtilities.RequestOptionsModel();
|
|
4494
4512
|
requestOptionsModel.disableBlockUI = true;
|
|
4495
4513
|
requestOptionsModel.disableSuccessNotification = true;
|
|
@@ -4782,6 +4800,7 @@
|
|
|
4782
4800
|
_this.items = [];
|
|
4783
4801
|
_this.Pages = Math.ceil((_this.totalRow / _this.options.PageSize));
|
|
4784
4802
|
_this.items = Array(_this.totalRow);
|
|
4803
|
+
_this.setText(_this.Pages, _this.totalRow);
|
|
4785
4804
|
}
|
|
4786
4805
|
}, function (error) {
|
|
4787
4806
|
if (error.status == 401)
|
|
@@ -4805,12 +4824,38 @@
|
|
|
4805
4824
|
}
|
|
4806
4825
|
return originalArray;
|
|
4807
4826
|
};
|
|
4827
|
+
PagingComponent.prototype.setText = function (pagesNumber, itemsNumber) {
|
|
4828
|
+
if (this.utilityService.isCurrentLanguageArabic()) {
|
|
4829
|
+
//Set pages text
|
|
4830
|
+
if (pagesNumber < 3 || pagesNumber > 10)
|
|
4831
|
+
this.pagesText = this.utilityService.getResourceValue("Page");
|
|
4832
|
+
else
|
|
4833
|
+
this.pagesText = this.utilityService.getResourceValue("Pages");
|
|
4834
|
+
//Set items text
|
|
4835
|
+
if (itemsNumber < 3 || itemsNumber > 10)
|
|
4836
|
+
this.itemsText = this.utilityService.getResourceValue("Item");
|
|
4837
|
+
else
|
|
4838
|
+
this.itemsText = this.utilityService.getResourceValue("Items");
|
|
4839
|
+
}
|
|
4840
|
+
else {
|
|
4841
|
+
//Set pages text
|
|
4842
|
+
if (pagesNumber > 1)
|
|
4843
|
+
this.pagesText = this.utilityService.getResourceValue("Pages");
|
|
4844
|
+
else
|
|
4845
|
+
this.pagesText = this.utilityService.getResourceValue("Page");
|
|
4846
|
+
//Set items text
|
|
4847
|
+
if (itemsNumber > 1)
|
|
4848
|
+
this.itemsText = this.utilityService.getResourceValue("Items");
|
|
4849
|
+
else
|
|
4850
|
+
this.itemsText = this.utilityService.getResourceValue("Item");
|
|
4851
|
+
}
|
|
4852
|
+
};
|
|
4808
4853
|
return PagingComponent;
|
|
4809
4854
|
}());
|
|
4810
4855
|
PagingComponent.decorators = [
|
|
4811
4856
|
{ type: i0.Component, args: [{
|
|
4812
4857
|
selector: 'BBSF-Paging',
|
|
4813
|
-
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(\"
|
|
4858
|
+
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> {{itemsText}} {{utilityService.getResourceValue(\"In\")}} <strong> {{Pages}}</strong> {{pagesText}}\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",
|
|
4814
4859
|
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"]
|
|
4815
4860
|
},] }
|
|
4816
4861
|
];
|
|
@@ -5224,7 +5269,7 @@
|
|
|
5224
5269
|
this.PasswordComplexityHasSmallLetter = this.UtilityService.getResourceValue("PasswordComplexityHasSmallLetter");
|
|
5225
5270
|
this.PasswordComplexityHasSpecialLetter = this.UtilityService.getResourceValue("PasswordComplexityHasSpecialLetter");
|
|
5226
5271
|
this.MaxWordCountValidationKey = this.UtilityService.getResourceValue("MaxWordCountValidationKey");
|
|
5227
|
-
this.ArabicLetterOnly = this.UtilityService.getResourceValue("
|
|
5272
|
+
this.ArabicLetterOnly = this.UtilityService.getResourceValue("ArabicIsRequiredAndOnly50CharactersEnglish");
|
|
5228
5273
|
this.EnglishLetterOnly = this.UtilityService.getResourceValue("EnglishLetterOnly");
|
|
5229
5274
|
};
|
|
5230
5275
|
TextboxComponent.prototype.onTextChange = function () {
|
|
@@ -5797,10 +5842,21 @@
|
|
|
5797
5842
|
this.modalService = modalService;
|
|
5798
5843
|
this.ngbActiveModal = ngbActiveModal;
|
|
5799
5844
|
this.router = router;
|
|
5845
|
+
this.isChange = null;
|
|
5846
|
+
this.OnChange = new i0.EventEmitter();
|
|
5800
5847
|
}
|
|
5801
5848
|
FormComponent.prototype.ngOnInit = function () {
|
|
5802
5849
|
this.fromName = this.randomString(5);
|
|
5803
5850
|
};
|
|
5851
|
+
FormComponent.prototype.ngAfterViewInit = function () {
|
|
5852
|
+
var _this = this;
|
|
5853
|
+
this.options.FormGroup.valueChanges.subscribe(function (es) {
|
|
5854
|
+
if (_this.isChange != null)
|
|
5855
|
+
_this.OnChange.emit(_this.isChange);
|
|
5856
|
+
else
|
|
5857
|
+
_this.isChange = true;
|
|
5858
|
+
});
|
|
5859
|
+
};
|
|
5804
5860
|
FormComponent.prototype.submit = function () {
|
|
5805
5861
|
var _this = this;
|
|
5806
5862
|
this.options.FormGroup.markAllAsTouched();
|
|
@@ -5877,6 +5933,7 @@
|
|
|
5877
5933
|
{ type: router.Router }
|
|
5878
5934
|
]; };
|
|
5879
5935
|
FormComponent.propDecorators = {
|
|
5936
|
+
OnChange: [{ type: i0.Output }],
|
|
5880
5937
|
options: [{ type: i0.Input }]
|
|
5881
5938
|
};
|
|
5882
5939
|
|
|
@@ -6186,6 +6243,7 @@
|
|
|
6186
6243
|
DataType["CoverPhoto"] = "9CC8C0BB-C670-466F-A632-8632FF5C1296";
|
|
6187
6244
|
DataType["InnovationLab"] = "4B914ED0-8B36-4E24-B85E-9A04C9F266BE";
|
|
6188
6245
|
DataType["Country"] = "342AA701-76C7-4E5D-8056-407BFC86F888";
|
|
6246
|
+
DataType["AreaOfFocus"] = "06a4cfb7-216a-4a60-8388-7a859aab90b4";
|
|
6189
6247
|
})(exports.DataType || (exports.DataType = {}));
|
|
6190
6248
|
|
|
6191
6249
|
exports.ForceDirection = void 0;
|
|
@@ -6196,6 +6254,8 @@
|
|
|
6196
6254
|
|
|
6197
6255
|
var ControlOptionsBase = /** @class */ (function () {
|
|
6198
6256
|
function ControlOptionsBase() {
|
|
6257
|
+
/** Sets an attribute disable="disabled" */
|
|
6258
|
+
this.IsDisabled = false;
|
|
6199
6259
|
/** to set type of view if Control is Vertical or Horizontal */
|
|
6200
6260
|
this.ViewType = null;
|
|
6201
6261
|
/** Allow to Pass Object With Body of Function which represent CustomValidation and massage for error massage */
|
|
@@ -6210,6 +6270,8 @@
|
|
|
6210
6270
|
var _this = _super.apply(this, __spreadArray([], __read(arguments))) || this;
|
|
6211
6271
|
/**To set First Day Of Week to DatePicker */
|
|
6212
6272
|
_this.FirstDayOfWeek = 1;
|
|
6273
|
+
/**To set Hour12Timer to DatePicker is 12 Hour or 24 Hour*/
|
|
6274
|
+
_this.Hour12Timer = true;
|
|
6213
6275
|
/**To set PickerType to DatePicker is Calendar or Timer Or Both */
|
|
6214
6276
|
_this.PickerType = exports.PickerType.Calendar;
|
|
6215
6277
|
/**To set StartView to DatePicker is Year or Month Or Multi-Year */
|
|
@@ -6340,8 +6402,8 @@
|
|
|
6340
6402
|
var _this = _super.apply(this, __spreadArray([], __read(arguments))) || this;
|
|
6341
6403
|
/** set Range Number to Textbox with type number with From-Value and To-value*/
|
|
6342
6404
|
_this.NumberRange = new RangeNumber();
|
|
6343
|
-
/**Prevent AutoComplete of textbox*/
|
|
6344
|
-
_this.AutoComplete = "
|
|
6405
|
+
/**Prevent AutoComplete of textbox default value is "on" available values "on" and "off"*/
|
|
6406
|
+
_this.AutoComplete = "on";
|
|
6345
6407
|
/** to set Direction of textbox if textbox is Arabic or English */
|
|
6346
6408
|
_this.ForceDirection = null;
|
|
6347
6409
|
/** to set Language of textbox if textbox language is Arabic or English */
|
|
@@ -7483,6 +7545,8 @@
|
|
|
7483
7545
|
_this.IconPositionAR = exports.IconPosition.right;
|
|
7484
7546
|
/*multi control placement type*/
|
|
7485
7547
|
_this.MultiControlPlacementType = null;
|
|
7548
|
+
/**Prevent AutoComplete of inputs default value is "on" available values "on" and "off"*/
|
|
7549
|
+
_this.AutoComplete = "on";
|
|
7486
7550
|
return _this;
|
|
7487
7551
|
}
|
|
7488
7552
|
return MultiLingualTextBoxOptions;
|
|
@@ -7657,8 +7721,6 @@
|
|
|
7657
7721
|
_this.DatasourceItemValue = "key";
|
|
7658
7722
|
/**Text Of Tag That Will Show In Dropdown */
|
|
7659
7723
|
_this.DatasourceItemText = "value";
|
|
7660
|
-
/**Text Show when none of the given options match the entered text */
|
|
7661
|
-
_this.NoResultText = "No Item Matches";
|
|
7662
7724
|
/**Set Query Param Name By Default It's 'query'*/
|
|
7663
7725
|
_this.QueryParamName = "query";
|
|
7664
7726
|
/**Set Query Param Name By Default It's 'query'*/
|
|
@@ -8126,7 +8188,7 @@
|
|
|
8126
8188
|
FileType["ZIP"] = "application/zip";
|
|
8127
8189
|
FileType["RAR"] = "application/x-rar-compressed";
|
|
8128
8190
|
FileType["VIDEO"] = "video/webm,video/ogg,video/mp4,video/quicktime,video/x-msvideo,video/x-ms-wmv";
|
|
8129
|
-
FileType["License"] = "application/
|
|
8191
|
+
FileType["License"] = "application/BN";
|
|
8130
8192
|
FileType["Xml"] = "text/xml";
|
|
8131
8193
|
FileType["OctetSteam"] = "application/octet-stream";
|
|
8132
8194
|
FileType["Txt"] = "text/plain";
|