nuxeo-development-framework 4.0.8 → 4.1.0

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.
@@ -4865,11 +4865,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
4865
4865
  type: Output
4866
4866
  }] } });
4867
4867
 
4868
- class VocabularyApiService {
4869
- constructor(nuxeoService, translate, environment) {
4868
+ class VocabularyApiService extends BaseService {
4869
+ constructor(nuxeoService, injector) {
4870
+ super(injector);
4870
4871
  this.nuxeoService = nuxeoService;
4871
- this.translate = translate;
4872
- this.environment = environment;
4872
+ this.injector = injector;
4873
4873
  this.vocabular = {};
4874
4874
  }
4875
4875
  getVocabularyList(listName) {
@@ -4881,7 +4881,7 @@ class VocabularyApiService {
4881
4881
  actualGetVocabularyList(listName, extraParams = {}) {
4882
4882
  return from(this.nuxeoService.nuxeoClient
4883
4883
  .operation('Directory.SuggestEntries', {})
4884
- .params(Object.assign({ directoryName: listName, dbl10n: false, localize: true, lang: this.translate.currentLang }, extraParams))
4884
+ .params(Object.assign({ directoryName: listName, dbl10n: false, localize: true, lang: this.translateService.currentLang }, extraParams))
4885
4885
  .execute());
4886
4886
  }
4887
4887
  vocabularyOperations(opName, body) {
@@ -4895,18 +4895,19 @@ class VocabularyApiService {
4895
4895
  throw err;
4896
4896
  }));
4897
4897
  }
4898
+ getVocListByVocName(vocName) {
4899
+ const url = `${this.environment.nuxeo}/api/v1/directory/${vocName}`;
4900
+ return this.get({ endpoint: url, headers: { properties: '*' } });
4901
+ }
4898
4902
  }
4899
- VocabularyApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: VocabularyApiService, deps: [{ token: NuxeoService }, { token: i1.TranslateService }, { token: 'environment' }], target: i0.ɵɵFactoryTarget.Injectable });
4903
+ VocabularyApiService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: VocabularyApiService, deps: [{ token: NuxeoService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
4900
4904
  VocabularyApiService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: VocabularyApiService, providedIn: 'root' });
4901
4905
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: VocabularyApiService, decorators: [{
4902
4906
  type: Injectable,
4903
4907
  args: [{
4904
4908
  providedIn: 'root',
4905
4909
  }]
4906
- }], ctorParameters: function () { return [{ type: NuxeoService }, { type: i1.TranslateService }, { type: undefined, decorators: [{
4907
- type: Inject,
4908
- args: ['environment']
4909
- }] }]; } });
4910
+ }], ctorParameters: function () { return [{ type: NuxeoService }, { type: i0.Injector }]; } });
4910
4911
 
4911
4912
  /**
4912
4913
  * A vocabulary dropdown input integrated with nuxeo vocabulary API,
@@ -14556,6 +14557,7 @@ class AttachmentsListComponent {
14556
14557
  this.batchList = false;
14557
14558
  this.dontDelete = false;
14558
14559
  this.canDelete = true;
14560
+ this.keepFileExtension = false;
14559
14561
  this.deleteSuccess = new EventEmitter();
14560
14562
  this.documentsCount = new EventEmitter();
14561
14563
  this.onDestroy$ = new Subject();
@@ -14615,7 +14617,7 @@ class AttachmentsListComponent {
14615
14617
  classification: new FormControl(null),
14616
14618
  category: new FormControl(null),
14617
14619
  type: new FormControl('PDF'),
14618
- title: new FormControl(item.title.split('.').slice(0, -1).join('.')),
14620
+ title: new FormControl(this.keepFileExtension ? item.title : item.title.split('.').slice(0, -1).join('.')),
14619
14621
  remarks: new FormControl(null),
14620
14622
  // isObject: new FormControl(false),
14621
14623
  extension: new FormControl(item.title.split('.').pop()),
@@ -14644,7 +14646,7 @@ class AttachmentsListComponent {
14644
14646
  }
14645
14647
  }
14646
14648
  AttachmentsListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AttachmentsListComponent, deps: [{ token: NuxeoService }], target: i0.ɵɵFactoryTarget.Component });
14647
- AttachmentsListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: AttachmentsListComponent, selector: "cts-attachments-list", inputs: { ancestorId: "ancestorId", provider: "provider", items: "items", batchList: "batchList", dontDelete: "dontDelete", canDelete: "canDelete", item: "item" }, outputs: { deleteSuccess: "deleteSuccess", documentsCount: "documentsCount", documentSelect: "documentSelect" }, usesOnChanges: true, ngImport: i0, template: "<ng-container>\r\n <div class=\"doc-list\">\r\n <ng-container>\r\n <form [formGroup]=\"attachmentForm\">\r\n <div formArrayName=\"attachmentCard\">\r\n <div\r\n class=\"doc-item\"\r\n *ngFor=\"\r\n let attachmentCardControl of attachmentForm.get('attachmentCard')[\r\n 'controls'\r\n ];\r\n let i = index\r\n \"\r\n >\r\n <!-- (click)=\"preview(item.uid)\" -->\r\n <div class=\"file-icon\">\r\n <mat-icon>file_copy</mat-icon>\r\n </div>\r\n <div\r\n [formGroupName]=\"i\"\r\n class=\"attachmentForm-container row no-gutters\"\r\n >\r\n <div class=\"formControl-wrapper col-12 col-xl-6\">\r\n <app-dynamic-form-textitem\r\n placeholder=\"{{ 'Title' | translate }}\"\r\n class=\"textitem\"\r\n formControlName=\"title\"\r\n \r\n >\r\n </app-dynamic-form-textitem>\r\n <app-dynamic-form-textitem\r\n placeholder=\"{{\r\n 'CREATE.ATTACHMENTS.REMARKS_PLACE_HOLDER' | translate\r\n }}\"\r\n class=\"textitem\"\r\n formControlName=\"remarks\"\r\n >\r\n </app-dynamic-form-textitem>\r\n </div>\r\n <div class=\"formControl-wrapper col-12 col-xl-6\">\r\n <app-dynamic-form-vocabulary-item\r\n class=\"voc-form-control\"\r\n [bindLabel]=\"'label'\"\r\n [bindValue]=\"'id'\"\r\n placeholder=\"{{ 'VOCABULARY.TYPE' | translate }}\"\r\n [multiple]=\"false\"\r\n [searchable]=\"false\"\r\n [closeOnSelect]=\"true\"\r\n [hideSelectedItems]=\"false\"\r\n [vocabularyType]=\"'VOC_CorrespondenceAttachmentType'\"\r\n formControlName=\"category\"\r\n >\r\n </app-dynamic-form-vocabulary-item>\r\n <app-dynamic-form-vocabulary-item\r\n class=\"voc-form-control\"\r\n [bindLabel]=\"'label'\"\r\n [bindValue]=\"'id'\"\r\n placeholder=\"{{ 'VOCABULARY.CLASSIFICATION' | translate }}\"\r\n [multiple]=\"false\"\r\n [searchable]=\"false\"\r\n [closeOnSelect]=\"true\"\r\n [hideSelectedItems]=\"false\"\r\n [vocabularyType]=\"'VOC_CorrespondenceAttachClassification'\"\r\n formControlName=\"classification\"\r\n >\r\n </app-dynamic-form-vocabulary-item>\r\n </div>\r\n <!-- <div class=\"formControl-toggleitem col-2 col-xl-2\">\r\n <cts-dynamic-form-slide-toggleitem\r\n label=\"{{ 'CREATE.ATTACHMENTS.ISOBJECT' | translate }}\"\r\n formControlName=\"isObject\"\r\n ></cts-dynamic-form-slide-toggleitem>\r\n </div> -->\r\n </div>\r\n <div class=\"btn-wrapper\">\r\n <button\r\n (click)=\"delInput(i)\"\r\n class=\"btn btn-outline-danger btn-no-border\"\r\n >\r\n <!-- deleteDocument($event, attachmentCardControl.value.item) -->\r\n <mat-icon>delete</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </form>\r\n </ng-container>\r\n </div>\r\n</ng-container>\r\n<ng-template #spinner>\r\n <mat-spinner class=\"centered-spinner\"></mat-spinner>\r\n</ng-template>\r\n", styles: [".bi{margin:0!important}.memo-sorting-wrapper{width:265px;margin:0 10px;height:100%;display:flex}.memo-sorting-wrapper .sorting-direction{width:65px;height:40px;background-color:#465573;color:#fff;font-size:20px;display:flex;justify-content:center;align-items:center;cursor:pointer}.memo-sorting-wrapper .memo-sorting-trigger{width:calc(100% - 65px);height:100%;background-color:transparent;border:1px solid lightgrey;display:flex;justify-content:space-between;align-items:center;padding:0 15px;font-size:14px}.memo-sorting-wrapper .memo-sorting-trigger i{font-size:16px;color:gray}.memo-sorting-menu{width:200px}.my-button{border:1px solid #465573;color:#465573;border-radius:5px;background-color:transparent;font-weight:bold;min-width:80px;height:40px}.my-button.reset{border:none}.my-button:hover{color:#fff;background-color:#465573}.my-button:hover.reset{color:#465573;border:1px solid #465573;background-color:#fff}.app-property-value .app-input-wrapper label{color:#646f85;font-size:13px;margin-bottom:5px}.app-property-value .app-input-wrapper label .text-danger{font-size:16px;line-height:14px;margin:0 5px!important}.app-property-value .app-input-wrapper .form-control{border:1px solid #ccc;border-radius:5px;background-color:#8f98aa1a;height:40px}.app-property-value .app-input-wrapper .form-control:disabled{background-color:#e9ecef!important}.app-property-value .app-input-wrapper .form-control:focus{border:1px solid #1a96c6;box-shadow:0 0 4px #79c3c26b!important}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers{list-style:none;padding:0;margin:0;font-size:14px}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers .error{margin-top:5px}.autocomplete-container .input-container input:focus,hijri-gregorian-datepicker .form-group .input-group .form-control:focus,.ng-select.ng-select-focused .ng-select-container{border:1px solid #1a96c6!important;box-shadow:0 0 4px #79c3c26b!important}input::placeholder{font-size:12px}.form-control:focus{box-shadow:none!important}.mat-stepper-horizontal{margin-top:-25px}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header.cdk-program-focused{background-color:transparent}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-icon-selected{background-color:transparent;color:#fff;background-image:linear-gradient(to right,#0dbab5,#1a96c6)}@media only screen and (max-width: 576px){.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-label .mat-step-text-label{white-space:pre-wrap;overflow:visible}}.mat-stepper-horizontal .mat-horizontal-content-container{overflow:visible}@media only screen and (max-width: 768px){.mat-stepper-horizontal .mat-horizontal-content-container{padding:0 0 24px}}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:after,.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:before{display:none}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:before{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);left:0}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:after{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);right:0}.form-wrapper{padding:30px 15px;border:1px solid #dde0e2}.form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.form-wrapper .buttons-wrapper button:hover{opacity:.7}.form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.form-wrapper .upload-wrapper button span{margin:0 10px}.renameFileComponent .form-wrapper{padding:30px 15px;border:none!important}.renameFileComponent .form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.renameFileComponent .form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.renameFileComponent .form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.renameFileComponent .form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.renameFileComponent .form-wrapper .buttons-wrapper button:hover{opacity:.7}.renameFileComponent .form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.renameFileComponent .form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.renameFileComponent .form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.renameFileComponent .form-wrapper .upload-wrapper button span{margin:0 10px}.my-dynamic-viewer{display:flex;align-items:center;font-size:12px;min-height:30px}.my-dynamic-viewer .my-label{font-size:12px;font-weight:500;width:150px;word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-label{width:50%}}.my-dynamic-viewer .my-value{width:calc(100% - 150px);word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-value{width:50%}}.my-dynamic-viewer .direction-img{font-size:14px}.my-dynamic-viewer .direction-img .incoming{display:none}.my-dynamic-viewer .direction-img .outgoing{display:none}.my-dynamic-viewer .direction-img .internal{display:none}.my-dynamic-viewer.draft .my-value{color:#596973}.my-dynamic-viewer.inProgress .my-value{color:#3c3cf0}.my-dynamic-viewer.registered .my-value{color:#4f008c}.my-dynamic-viewer.archived .my-value{color:#fbb62c}.my-dynamic-viewer.closed .my-value{color:#00dca5}.my-dynamic-viewer.approved .my-value{color:#06a57e}.my-dynamic-viewer.assigned .my-value{color:#fd6670}.my-dynamic-viewer.sent .my-value{color:#3c3cf0}.my-dynamic-viewer.published .my-value{color:#00dca5}.my-dynamic-viewer.Outgoing .my-value{display:flex}.my-dynamic-viewer.Outgoing .my-value .direction-img .outgoing{color:#fbb62c;margin:1px 5px;display:flex}.my-dynamic-viewer.Outgoing .my-value .text{margin:0 5px}.my-dynamic-viewer.Internal .my-value{display:flex}.my-dynamic-viewer.Internal .my-value .direction-img .internal{color:#3c3cf0;margin:1px 5px;display:flex}.my-dynamic-viewer.Internal .my-value .text{margin:0 5px}.my-dynamic-viewer.Incoming .my-value{display:flex}.my-dynamic-viewer.Incoming .my-value .direction-img .incoming{color:#00dca5;display:flex}.my-dynamic-viewer.Incoming .my-value .text{margin:-3px 5px 0}.my-dynamic-viewer.vertical{display:block}.my-dynamic-viewer.vertical .my-label{width:auto}.my-dynamic-viewer.vertical .my-value{width:auto}.my-dynamic-viewer.with-out-label{width:100%!important}.doc-item{display:flex;flex:1;padding-top:6px;padding-bottom:6px;justify-content:space-between;align-items:center;padding-inline-end:4px;cursor:pointer;border:1px solid;border-color:#d9dce2}.doc-item .item-content{display:flex;align-items:center;justify-content:space-between}.doc-item .file-icon{margin:4px;color:#465573;display:flex;align-items:center}.attachmentForm-container{width:100%;grid-row-gap:6px;row-gap:6px}.attachmentForm-container .formControl-wrapper{display:flex;align-items:center;justify-content:space-between;grid-column-gap:10px;column-gap:10px;padding-inline-end:5px;padding-inline-start:5px}.attachmentForm-container .formControl-wrapper .voc-form-control{width:50%}.attachmentForm-container .formControl-wrapper .textitem{width:100%}.attachmentForm-container .formControl-toggleitem{display:flex;align-items:center;justify-content:center}.btn-wrapper{display:flex;justify-content:flex-end}\n"], components: [{ type: i2$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: DynamicFormTextItemComponent, selector: "app-dynamic-form-textitem", inputs: ["autoComplete", "nativeAutoComplete", "autoComplete_pageProvider", "autoComplete_propertyName", "autoComplete_propertyKey", "autoCompleteValueKey", "autoCompleteType", "tenantId", "emitFullObject", "outsideParams", "type", "property", "label", "editable", "placeholder", "disabled", "displayEmpty", "preventSpace", "id", "maxCharsNum"] }, { type: DynamicFormVocabularyItemComponent, selector: "app-dynamic-form-vocabulary-item", inputs: ["bindValue", "bindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "vocabularyType", "label", "cacheable", "shwoAllValues"], outputs: ["onSelecting"] }, { type: i8.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i6.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "translate": i1.TranslatePipe } });
14649
+ AttachmentsListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: AttachmentsListComponent, selector: "cts-attachments-list", inputs: { ancestorId: "ancestorId", provider: "provider", items: "items", batchList: "batchList", dontDelete: "dontDelete", canDelete: "canDelete", item: "item", keepFileExtension: "keepFileExtension" }, outputs: { deleteSuccess: "deleteSuccess", documentsCount: "documentsCount", documentSelect: "documentSelect" }, usesOnChanges: true, ngImport: i0, template: "<ng-container>\r\n <div class=\"doc-list\">\r\n <ng-container>\r\n <form [formGroup]=\"attachmentForm\">\r\n <div formArrayName=\"attachmentCard\">\r\n <div\r\n class=\"doc-item\"\r\n *ngFor=\"\r\n let attachmentCardControl of attachmentForm.get('attachmentCard')[\r\n 'controls'\r\n ];\r\n let i = index\r\n \"\r\n >\r\n <!-- (click)=\"preview(item.uid)\" -->\r\n <div class=\"file-icon\">\r\n <mat-icon>file_copy</mat-icon>\r\n </div>\r\n <div\r\n [formGroupName]=\"i\"\r\n class=\"attachmentForm-container row no-gutters\"\r\n >\r\n <div class=\"formControl-wrapper col-12 col-xl-6\">\r\n <app-dynamic-form-textitem\r\n placeholder=\"{{ 'Title' | translate }}\"\r\n class=\"textitem\"\r\n formControlName=\"title\"\r\n \r\n >\r\n </app-dynamic-form-textitem>\r\n <app-dynamic-form-textitem\r\n placeholder=\"{{\r\n 'CREATE.ATTACHMENTS.REMARKS_PLACE_HOLDER' | translate\r\n }}\"\r\n class=\"textitem\"\r\n formControlName=\"remarks\"\r\n >\r\n </app-dynamic-form-textitem>\r\n </div>\r\n <div class=\"formControl-wrapper col-12 col-xl-6\">\r\n <app-dynamic-form-vocabulary-item\r\n class=\"voc-form-control\"\r\n [bindLabel]=\"'label'\"\r\n [bindValue]=\"'id'\"\r\n placeholder=\"{{ 'VOCABULARY.TYPE' | translate }}\"\r\n [multiple]=\"false\"\r\n [searchable]=\"false\"\r\n [closeOnSelect]=\"true\"\r\n [hideSelectedItems]=\"false\"\r\n [vocabularyType]=\"'VOC_CorrespondenceAttachmentType'\"\r\n formControlName=\"category\"\r\n >\r\n </app-dynamic-form-vocabulary-item>\r\n <app-dynamic-form-vocabulary-item\r\n class=\"voc-form-control\"\r\n [bindLabel]=\"'label'\"\r\n [bindValue]=\"'id'\"\r\n placeholder=\"{{ 'VOCABULARY.CLASSIFICATION' | translate }}\"\r\n [multiple]=\"false\"\r\n [searchable]=\"false\"\r\n [closeOnSelect]=\"true\"\r\n [hideSelectedItems]=\"false\"\r\n [vocabularyType]=\"'VOC_CorrespondenceAttachClassification'\"\r\n formControlName=\"classification\"\r\n >\r\n </app-dynamic-form-vocabulary-item>\r\n </div>\r\n <!-- <div class=\"formControl-toggleitem col-2 col-xl-2\">\r\n <cts-dynamic-form-slide-toggleitem\r\n label=\"{{ 'CREATE.ATTACHMENTS.ISOBJECT' | translate }}\"\r\n formControlName=\"isObject\"\r\n ></cts-dynamic-form-slide-toggleitem>\r\n </div> -->\r\n </div>\r\n <div class=\"btn-wrapper\">\r\n <button\r\n (click)=\"delInput(i)\"\r\n class=\"btn btn-outline-danger btn-no-border\"\r\n >\r\n <!-- deleteDocument($event, attachmentCardControl.value.item) -->\r\n <mat-icon>delete</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </form>\r\n </ng-container>\r\n </div>\r\n</ng-container>\r\n<ng-template #spinner>\r\n <mat-spinner class=\"centered-spinner\"></mat-spinner>\r\n</ng-template>\r\n", styles: [".bi{margin:0!important}.memo-sorting-wrapper{width:265px;margin:0 10px;height:100%;display:flex}.memo-sorting-wrapper .sorting-direction{width:65px;height:40px;background-color:#465573;color:#fff;font-size:20px;display:flex;justify-content:center;align-items:center;cursor:pointer}.memo-sorting-wrapper .memo-sorting-trigger{width:calc(100% - 65px);height:100%;background-color:transparent;border:1px solid lightgrey;display:flex;justify-content:space-between;align-items:center;padding:0 15px;font-size:14px}.memo-sorting-wrapper .memo-sorting-trigger i{font-size:16px;color:gray}.memo-sorting-menu{width:200px}.my-button{border:1px solid #465573;color:#465573;border-radius:5px;background-color:transparent;font-weight:bold;min-width:80px;height:40px}.my-button.reset{border:none}.my-button:hover{color:#fff;background-color:#465573}.my-button:hover.reset{color:#465573;border:1px solid #465573;background-color:#fff}.app-property-value .app-input-wrapper label{color:#646f85;font-size:13px;margin-bottom:5px}.app-property-value .app-input-wrapper label .text-danger{font-size:16px;line-height:14px;margin:0 5px!important}.app-property-value .app-input-wrapper .form-control{border:1px solid #ccc;border-radius:5px;background-color:#8f98aa1a;height:40px}.app-property-value .app-input-wrapper .form-control:disabled{background-color:#e9ecef!important}.app-property-value .app-input-wrapper .form-control:focus{border:1px solid #1a96c6;box-shadow:0 0 4px #79c3c26b!important}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers{list-style:none;padding:0;margin:0;font-size:14px}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers .error{margin-top:5px}.autocomplete-container .input-container input:focus,hijri-gregorian-datepicker .form-group .input-group .form-control:focus,.ng-select.ng-select-focused .ng-select-container{border:1px solid #1a96c6!important;box-shadow:0 0 4px #79c3c26b!important}input::placeholder{font-size:12px}.form-control:focus{box-shadow:none!important}.mat-stepper-horizontal{margin-top:-25px}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header.cdk-program-focused{background-color:transparent}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-icon-selected{background-color:transparent;color:#fff;background-image:linear-gradient(to right,#0dbab5,#1a96c6)}@media only screen and (max-width: 576px){.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-label .mat-step-text-label{white-space:pre-wrap;overflow:visible}}.mat-stepper-horizontal .mat-horizontal-content-container{overflow:visible}@media only screen and (max-width: 768px){.mat-stepper-horizontal .mat-horizontal-content-container{padding:0 0 24px}}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:after,.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:before{display:none}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:before{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);left:0}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:after{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);right:0}.form-wrapper{padding:30px 15px;border:1px solid #dde0e2}.form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.form-wrapper .buttons-wrapper button:hover{opacity:.7}.form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.form-wrapper .upload-wrapper button span{margin:0 10px}.renameFileComponent .form-wrapper{padding:30px 15px;border:none!important}.renameFileComponent .form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.renameFileComponent .form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.renameFileComponent .form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.renameFileComponent .form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.renameFileComponent .form-wrapper .buttons-wrapper button:hover{opacity:.7}.renameFileComponent .form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.renameFileComponent .form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.renameFileComponent .form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.renameFileComponent .form-wrapper .upload-wrapper button span{margin:0 10px}.my-dynamic-viewer{display:flex;align-items:center;font-size:12px;min-height:30px}.my-dynamic-viewer .my-label{font-size:12px;font-weight:500;width:150px;word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-label{width:50%}}.my-dynamic-viewer .my-value{width:calc(100% - 150px);word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-value{width:50%}}.my-dynamic-viewer .direction-img{font-size:14px}.my-dynamic-viewer .direction-img .incoming{display:none}.my-dynamic-viewer .direction-img .outgoing{display:none}.my-dynamic-viewer .direction-img .internal{display:none}.my-dynamic-viewer.draft .my-value{color:#596973}.my-dynamic-viewer.inProgress .my-value{color:#3c3cf0}.my-dynamic-viewer.registered .my-value{color:#4f008c}.my-dynamic-viewer.archived .my-value{color:#fbb62c}.my-dynamic-viewer.closed .my-value{color:#00dca5}.my-dynamic-viewer.approved .my-value{color:#06a57e}.my-dynamic-viewer.assigned .my-value{color:#fd6670}.my-dynamic-viewer.sent .my-value{color:#3c3cf0}.my-dynamic-viewer.published .my-value{color:#00dca5}.my-dynamic-viewer.Outgoing .my-value{display:flex}.my-dynamic-viewer.Outgoing .my-value .direction-img .outgoing{color:#fbb62c;margin:1px 5px;display:flex}.my-dynamic-viewer.Outgoing .my-value .text{margin:0 5px}.my-dynamic-viewer.Internal .my-value{display:flex}.my-dynamic-viewer.Internal .my-value .direction-img .internal{color:#3c3cf0;margin:1px 5px;display:flex}.my-dynamic-viewer.Internal .my-value .text{margin:0 5px}.my-dynamic-viewer.Incoming .my-value{display:flex}.my-dynamic-viewer.Incoming .my-value .direction-img .incoming{color:#00dca5;display:flex}.my-dynamic-viewer.Incoming .my-value .text{margin:-3px 5px 0}.my-dynamic-viewer.vertical{display:block}.my-dynamic-viewer.vertical .my-label{width:auto}.my-dynamic-viewer.vertical .my-value{width:auto}.my-dynamic-viewer.with-out-label{width:100%!important}.doc-item{display:flex;flex:1;padding-top:6px;padding-bottom:6px;justify-content:space-between;align-items:center;padding-inline-end:4px;cursor:pointer;border:1px solid;border-color:#d9dce2}.doc-item .item-content{display:flex;align-items:center;justify-content:space-between}.doc-item .file-icon{margin:4px;color:#465573;display:flex;align-items:center}.attachmentForm-container{width:100%;grid-row-gap:6px;row-gap:6px}.attachmentForm-container .formControl-wrapper{display:flex;align-items:center;justify-content:space-between;grid-column-gap:10px;column-gap:10px;padding-inline-end:5px;padding-inline-start:5px}.attachmentForm-container .formControl-wrapper .voc-form-control{width:50%}.attachmentForm-container .formControl-wrapper .textitem{width:100%}.attachmentForm-container .formControl-toggleitem{display:flex;align-items:center;justify-content:center}.btn-wrapper{display:flex;justify-content:flex-end}\n"], components: [{ type: i2$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: DynamicFormTextItemComponent, selector: "app-dynamic-form-textitem", inputs: ["autoComplete", "nativeAutoComplete", "autoComplete_pageProvider", "autoComplete_propertyName", "autoComplete_propertyKey", "autoCompleteValueKey", "autoCompleteType", "tenantId", "emitFullObject", "outsideParams", "type", "property", "label", "editable", "placeholder", "disabled", "displayEmpty", "preventSpace", "id", "maxCharsNum"] }, { type: DynamicFormVocabularyItemComponent, selector: "app-dynamic-form-vocabulary-item", inputs: ["bindValue", "bindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "vocabularyType", "label", "cacheable", "shwoAllValues"], outputs: ["onSelecting"] }, { type: i8.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i6.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i6.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "translate": i1.TranslatePipe } });
14648
14650
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AttachmentsListComponent, decorators: [{
14649
14651
  type: Component,
14650
14652
  args: [{
@@ -14666,6 +14668,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
14666
14668
  type: Input
14667
14669
  }], item: [{
14668
14670
  type: Input
14671
+ }], keepFileExtension: [{
14672
+ type: Input
14669
14673
  }], deleteSuccess: [{
14670
14674
  type: Output
14671
14675
  }], documentsCount: [{
@@ -20177,6 +20181,7 @@ class TranslatedVocabularySelectComponent {
20177
20181
  this.loading = false;
20178
20182
  this.mapingResponse = false;
20179
20183
  this.params = {};
20184
+ this.getByDirectorySuggestion = true;
20180
20185
  /** event emitted with selected items */
20181
20186
  this.onSelectItems = new EventEmitter();
20182
20187
  this.selection = [];
@@ -20221,20 +20226,27 @@ class TranslatedVocabularySelectComponent {
20221
20226
  getlistOfVocabulary() {
20222
20227
  this.loading = true;
20223
20228
  if (this.vocbularyId) {
20224
- this.vocabularyApiServ
20225
- .getVocabularyListByFilters(this.vocbularyId, this.params, this.filter)
20226
- .subscribe((res) => {
20229
+ const observable = (this.getByDirectorySuggestion) ? this.vocabularyApiServ
20230
+ .getVocabularyListByFilters(this.vocbularyId, this.params, this.filter).pipe(map(res => {
20231
+ let tempArr = [];
20227
20232
  if (this.mapingResponse) {
20228
20233
  res.forEach((element) => {
20229
- this.data.push({
20234
+ tempArr.push({
20230
20235
  label_ar: element.displayLabel,
20231
20236
  label_en: element.displayLabel,
20232
20237
  });
20233
20238
  });
20234
20239
  }
20235
20240
  else {
20236
- this.data = res;
20241
+ tempArr = res;
20237
20242
  }
20243
+ return tempArr;
20244
+ }))
20245
+ : this.vocabularyApiServ.getVocListByVocName(this.vocbularyId).pipe(map((res) => {
20246
+ return res.entries.map(elem => elem.properties);
20247
+ }));
20248
+ observable.subscribe((res) => {
20249
+ this.data = res;
20238
20250
  this.buffer = (this.data || []).slice(0, this.bufferSize);
20239
20251
  this.loading = false;
20240
20252
  }, err => {
@@ -20298,7 +20310,7 @@ class TranslatedVocabularySelectComponent {
20298
20310
  }
20299
20311
  }
20300
20312
  TranslatedVocabularySelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TranslatedVocabularySelectComponent, deps: [{ token: i1.TranslateService }, { token: TranslationService }, { token: VocabularyApiService }, { token: i6.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
20301
- TranslatedVocabularySelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TranslatedVocabularySelectComponent, selector: "app-translated-vocabulary-select", inputs: { label: "label", bindValue: "bindValue", arbBindLabel: "arbBindLabel", engBindLabel: "engBindLabel", placeholder: "placeholder", multiple: "multiple", searchable: "searchable", closeOnSelect: "closeOnSelect", hideSelectedItems: "hideSelectedItems", disabled: "disabled", clear: "clear", filter: "filter", useFilter: "useFilter", vocbularyId: "vocbularyId", mapingResponse: "mapingResponse", params: "params" }, outputs: { onSelectItems: "onSelectItems" }, viewQueries: [{ propertyName: "ngSelectComponent", first: true, predicate: NgSelectComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"translated-vocbulary-wrapper\" [ngClass]=\"{'rtl-translated-vocbulary-wrapper' : isArabic === true}\">\r\n <div class=\"vocabulary-title text-base font-bold text-accent-900 mb-0\">\r\n {{label | translate}}\r\n <span *ngIf=\"isRequired()\" class=\"required-flage\">*</span>\r\n </div>\r\n <ng-select\r\n [bindLabel]=\"bindLabel\"\r\n [bindValue]=\"bindValue\"\r\n [placeholder]=\"placeholder\"\r\n [multiple]=\"multiple\"\r\n [clearable]=\"clear\"\r\n [searchable]=\"searchable\"\r\n [closeOnSelect]=\"closeOnSelect\"\r\n [hideSelected]=\"hideSelectedItems\"\r\n [loading]=\"loading\"\r\n (scrollToEnd)=\"onScrollToEnd()\"\r\n (change)=\"emitSelection($event)\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"selection\"\r\n >\r\n <ng-option *ngFor=\"let option of buffer\" [value]=\"option[bindValue]\">{{isArabic ? option[bindLabel] : option[bindLabel]}}</ng-option>\r\n </ng-select>\r\n</div>\r\n", styles: [".translated-vocbulary-wrapper .vocabulary-title .required-flage{color:#ef4444}.rtl-translated-vocbulary-wrapper{direction:rtl}\n"], components: [{ type: i5.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { type: i5.ɵr, selector: "ng-option", inputs: ["disabled", "value"] }], directives: [{ type: i4$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "translate": i1.TranslatePipe } });
20313
+ TranslatedVocabularySelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TranslatedVocabularySelectComponent, selector: "app-translated-vocabulary-select", inputs: { label: "label", bindValue: "bindValue", arbBindLabel: "arbBindLabel", engBindLabel: "engBindLabel", placeholder: "placeholder", multiple: "multiple", searchable: "searchable", closeOnSelect: "closeOnSelect", hideSelectedItems: "hideSelectedItems", disabled: "disabled", clear: "clear", filter: "filter", useFilter: "useFilter", vocbularyId: "vocbularyId", mapingResponse: "mapingResponse", params: "params", getByDirectorySuggestion: "getByDirectorySuggestion" }, outputs: { onSelectItems: "onSelectItems" }, viewQueries: [{ propertyName: "ngSelectComponent", first: true, predicate: NgSelectComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<div class=\"translated-vocbulary-wrapper\" [ngClass]=\"{'rtl-translated-vocbulary-wrapper' : isArabic === true}\">\r\n <div class=\"vocabulary-title text-base font-bold text-accent-900 mb-0\">\r\n {{label | translate}}\r\n <span *ngIf=\"isRequired()\" class=\"required-flage\">*</span>\r\n </div>\r\n <ng-select\r\n [bindLabel]=\"bindLabel\"\r\n [bindValue]=\"bindValue\"\r\n [placeholder]=\"placeholder\"\r\n [multiple]=\"multiple\"\r\n [clearable]=\"clear\"\r\n [searchable]=\"searchable\"\r\n [closeOnSelect]=\"closeOnSelect\"\r\n [hideSelected]=\"hideSelectedItems\"\r\n [loading]=\"loading\"\r\n (scrollToEnd)=\"onScrollToEnd()\"\r\n (change)=\"emitSelection($event)\"\r\n [disabled]=\"disabled\"\r\n [(ngModel)]=\"selection\"\r\n >\r\n <ng-option *ngFor=\"let option of buffer\" [value]=\"option[bindValue]\">{{isArabic ? option[bindLabel] : option[bindLabel]}}</ng-option>\r\n </ng-select>\r\n</div>\r\n", styles: [".translated-vocbulary-wrapper .vocabulary-title .required-flage{color:#ef4444}.rtl-translated-vocbulary-wrapper{direction:rtl}\n"], components: [{ type: i5.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { type: i5.ɵr, selector: "ng-option", inputs: ["disabled", "value"] }], directives: [{ type: i4$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], pipes: { "translate": i1.TranslatePipe } });
20302
20314
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TranslatedVocabularySelectComponent, decorators: [{
20303
20315
  type: Component,
20304
20316
  args: [{
@@ -20345,6 +20357,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
20345
20357
  type: Input
20346
20358
  }], params: [{
20347
20359
  type: Input
20360
+ }], getByDirectorySuggestion: [{
20361
+ type: Input
20348
20362
  }], onSelectItems: [{
20349
20363
  type: Output
20350
20364
  }] } });
@@ -20508,7 +20522,7 @@ class DynamicFieldsRendererComponent {
20508
20522
  }
20509
20523
  }
20510
20524
  DynamicFieldsRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicFieldsRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
20511
- DynamicFieldsRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicFieldsRendererComponent, selector: "app-dynamic-fields-renderer", inputs: { form: "form", agencyNameFilter: "agencyNameFilter", countryNameFilter: "countryNameFilter", mode: "mode", fields: "fields" }, ngImport: i0, template: "<div [formGroup]=\"form\" *ngIf=\"form\">\r\n <div class=\"renderer-container\">\r\n <div class=\"field-container\" *ngFor=\"let field of fields\">\r\n <ng-container *permission=\"{name: field.permission, entity: field.formControlName}\">\r\n <div class=\"single-field mb-3\" *ngIf=\"field.type === 'text'\">\r\n <div class=\"label-style\">\r\n {{ field.label | translate}}\r\n <span class=\"text-red-500\" *ngIf=\"field.required\">*</span>\r\n </div>\r\n <input class=\"field-style\" [formControlName]=\"field.formControlName\" \r\n placeholder=\" {{ field.placeholder | translate}}\"/>\r\n </div>\r\n <div class=\"single-field mb-3\" *ngIf=\"field.type === 'number'\">\r\n <div class=\"label-style\">\r\n {{ field.label | translate}}\r\n <span class=\"text-red-500\" *ngIf=\"field.required\">*</span>\r\n </div>\r\n <input min=\"1\" type=\"number\" class=\"field-style\" [formControlName]=\"field.formControlName\" \r\n placeholder=\" {{ field.placeholder | translate}}\"/>\r\n </div>\r\n <div class=\"single-field mb-3\" *ngIf=\"field.type === 'date'\"> \r\n <cts-dynamic-form-hijri-dateitem\r\n [formControlName]=\"field.formControlName\"\r\n [label]=\"field.label\"\r\n >\r\n </cts-dynamic-form-hijri-dateitem>\r\n </div>\r\n \r\n <div class=\"single-field mb-3\" *ngIf=\"field.type === 'dynamic-vocabulary'\">\r\n <app-dynamic-form-vocabulary-item [label]=\"field.label\" [bindLabel]=\"field.bindLabel\"\r\n [bindValue]=\"field.bindValue\" placeholder=\"{{ field.placeholder | translate }}\" [multiple]=\"field.multiple\"\r\n [searchable]=\"field.searchable\" [closeOnSelect]=\"field.closeOnSelect\" [disabled]=\"field.disabled\" [hideSelectedItems]=\"field.hideSelectedItems\"\r\n [vocabularyType]=\"field.vocabularyType\" \r\n [formControlName]=\"field.formControlName\">\r\n </app-dynamic-form-vocabulary-item>\r\n </div>\r\n \r\n <!-- <div class=\"single-field mb-3\" *ngIf=\"field.type === 'department-selector'\">\r\n <div class=\"label-style\">\r\n {{ field.label | translate }}\r\n <span class=\"text-red-500\" *ngIf=\"field.required\">*</span>\r\n </div>\r\n <app-dynamic-form-department\r\n [formControlName]=\"field.formControlName\"\r\n [placeholder]=\"field.placeholder\"\r\n [pp_departmentNestedTree]=\"field.pp_departmentNestedTree\"\r\n [pp_departmentTree]=\"field.pp_departmentTree\"\r\n [customPrefix]=\"field.customPrefix\"\r\n [customParentProperty]=\"field.customParentProperty\"\r\n [useCustomAddEditAction]=\"field.useCustomAddEditAction\"\r\n >\r\n </app-dynamic-form-department>\r\n </div> -->\r\n \r\n <div class=\"single-field mb-3\" *ngIf=\"field.type === 'translated-vocabulary'\">\r\n <app-translated-vocabulary-select [label]=\"field.label\" [arbBindLabel]=\"field.arbBindLabel\" [engBindLabel]=\"field.engBindLabel\"\r\n [bindValue]=\"field.bindValue\" placeholder=\"{{ field.placeholder | translate }}\" [multiple]=\"field.multiple\"\r\n [searchable]=\"field.searchable\" [closeOnSelect]=\"field.closeOnSelect\" [hideSelectedItems]=\"field.hideSelectedItems\" [formControlName]=\"field.formControlName\"\r\n [vocbularyId]=\"field.vocbularyId\" [useFilter]=\"field.useFilter\" [filter]=\"field.filter === 'agencyName' ? agencyNameFilter : (field.filter === 'countryName' ? countryNameFilter : {})\"\r\n [params]=\"field.params || {}\">\r\n </app-translated-vocabulary-select>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</div>", styles: [""], components: [{ type: DynamicFormHijriDateitemComponent, selector: "cts-dynamic-form-hijri-dateitem", inputs: ["minHijri", "maxHijri", "minGreg", "maxGreg", "label", "isDisabled", "range", "vertical", "isReadOnly", "placeholder"], outputs: ["valueChanged"] }, { type: DynamicFormVocabularyItemComponent, selector: "app-dynamic-form-vocabulary-item", inputs: ["bindValue", "bindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "vocabularyType", "label", "cacheable", "shwoAllValues"], outputs: ["onSelecting"] }, { type: TranslatedVocabularySelectComponent, selector: "app-translated-vocabulary-select", inputs: ["label", "bindValue", "arbBindLabel", "engBindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "clear", "filter", "useFilter", "vocbularyId", "mapingResponse", "params"], outputs: ["onSelectItems"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: PermissionsDirective, selector: "[permission]", inputs: ["permission"] }, { type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i6.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { type: i6.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
20525
+ DynamicFieldsRendererComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicFieldsRendererComponent, selector: "app-dynamic-fields-renderer", inputs: { form: "form", agencyNameFilter: "agencyNameFilter", countryNameFilter: "countryNameFilter", mode: "mode", fields: "fields" }, ngImport: i0, template: "<div [formGroup]=\"form\" *ngIf=\"form\">\r\n <div class=\"renderer-container\">\r\n <div class=\"field-container\" *ngFor=\"let field of fields\">\r\n <ng-container\r\n *permission=\"{ name: field.permission, entity: field.formControlName }\"\r\n >\r\n <div class=\"single-field mb-3\" *ngIf=\"field.type === 'text'\">\r\n <div class=\"label-style\">\r\n {{ field.label | translate }}\r\n <span class=\"text-red-500\" *ngIf=\"field.required\">*</span>\r\n </div>\r\n <input\r\n class=\"field-style\"\r\n [formControlName]=\"field.formControlName\"\r\n placeholder=\" {{ field.placeholder | translate }}\"\r\n />\r\n </div>\r\n <div class=\"single-field mb-3\" *ngIf=\"field.type === 'number'\">\r\n <div class=\"label-style\">\r\n {{ field.label | translate }}\r\n <span class=\"text-red-500\" *ngIf=\"field.required\">*</span>\r\n </div>\r\n <input\r\n min=\"1\"\r\n type=\"number\"\r\n class=\"field-style\"\r\n [formControlName]=\"field.formControlName\"\r\n placeholder=\" {{ field.placeholder | translate }}\"\r\n />\r\n </div>\r\n <div class=\"single-field mb-3\" *ngIf=\"field.type === 'date'\">\r\n <cts-dynamic-form-hijri-dateitem\r\n [formControlName]=\"field.formControlName\"\r\n [label]=\"field.label\"\r\n >\r\n </cts-dynamic-form-hijri-dateitem>\r\n </div>\r\n\r\n <div\r\n class=\"single-field mb-3\"\r\n *ngIf=\"field.type === 'dynamic-vocabulary'\"\r\n >\r\n <app-dynamic-form-vocabulary-item\r\n [label]=\"field.label\"\r\n [bindLabel]=\"field.bindLabel\"\r\n [bindValue]=\"field.bindValue\"\r\n placeholder=\"{{ field.placeholder | translate }}\"\r\n [multiple]=\"field.multiple\"\r\n [searchable]=\"field.searchable\"\r\n [closeOnSelect]=\"field.closeOnSelect\"\r\n [disabled]=\"field.disabled\"\r\n [hideSelectedItems]=\"field.hideSelectedItems\"\r\n [vocabularyType]=\"field.vocabularyType\"\r\n [formControlName]=\"field.formControlName\"\r\n >\r\n </app-dynamic-form-vocabulary-item>\r\n </div>\r\n\r\n <!-- <div class=\"single-field mb-3\" *ngIf=\"field.type === 'department-selector'\">\r\n <div class=\"label-style\">\r\n {{ field.label | translate }}\r\n <span class=\"text-red-500\" *ngIf=\"field.required\">*</span>\r\n </div>\r\n <app-dynamic-form-department\r\n [formControlName]=\"field.formControlName\"\r\n [placeholder]=\"field.placeholder\"\r\n [pp_departmentNestedTree]=\"field.pp_departmentNestedTree\"\r\n [pp_departmentTree]=\"field.pp_departmentTree\"\r\n [customPrefix]=\"field.customPrefix\"\r\n [customParentProperty]=\"field.customParentProperty\"\r\n [useCustomAddEditAction]=\"field.useCustomAddEditAction\"\r\n >\r\n </app-dynamic-form-department>\r\n </div> -->\r\n\r\n <div\r\n class=\"single-field mb-3\"\r\n *ngIf=\"field.type === 'translated-vocabulary'\"\r\n >\r\n <app-translated-vocabulary-select\r\n [label]=\"field.label\"\r\n [arbBindLabel]=\"field.arbBindLabel\"\r\n [engBindLabel]=\"field.engBindLabel\"\r\n [bindValue]=\"field.bindValue\"\r\n placeholder=\"{{ field.placeholder | translate }}\"\r\n [multiple]=\"field.multiple\"\r\n [searchable]=\"field.searchable\"\r\n [closeOnSelect]=\"field.closeOnSelect\"\r\n [hideSelectedItems]=\"field.hideSelectedItems\"\r\n [formControlName]=\"field.formControlName\"\r\n [vocbularyId]=\"field.vocbularyId\"\r\n [useFilter]=\"field.useFilter\"\r\n [filter]=\"\r\n field.filter === 'agencyName'\r\n ? agencyNameFilter\r\n : field.filter === 'countryName'\r\n ? countryNameFilter\r\n : {}\r\n \"\r\n [params]=\"field.params || {}\"\r\n [getByDirectorySuggestion]=\"field.getByDirectorySuggestion\"\r\n >\r\n </app-translated-vocabulary-select>\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [""], components: [{ type: DynamicFormHijriDateitemComponent, selector: "cts-dynamic-form-hijri-dateitem", inputs: ["minHijri", "maxHijri", "minGreg", "maxGreg", "label", "isDisabled", "range", "vertical", "isReadOnly", "placeholder"], outputs: ["valueChanged"] }, { type: DynamicFormVocabularyItemComponent, selector: "app-dynamic-form-vocabulary-item", inputs: ["bindValue", "bindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "vocabularyType", "label", "cacheable", "shwoAllValues"], outputs: ["onSelecting"] }, { type: TranslatedVocabularySelectComponent, selector: "app-translated-vocabulary-select", inputs: ["label", "bindValue", "arbBindLabel", "engBindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "clear", "filter", "useFilter", "vocbularyId", "mapingResponse", "params", "getByDirectorySuggestion"], outputs: ["onSelectItems"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: PermissionsDirective, selector: "[permission]", inputs: ["permission"] }, { type: i6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i6.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i6.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { type: i6.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
20512
20526
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicFieldsRendererComponent, decorators: [{
20513
20527
  type: Component,
20514
20528
  args: [{