nuxeo-development-framework 5.4.6 → 5.4.8
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/bundles/nuxeo-development-framework.umd.js +702 -361
- package/bundles/nuxeo-development-framework.umd.js.map +1 -1
- package/esm2015/lib/components/correspondence-relation/components/correspondence-relation-create-form/correspondence-relation-create-form.component.js +1 -1
- package/esm2015/lib/components/documents/components/attachments-list/attachments-list.component.js +4 -4
- package/esm2015/lib/components/documents/components/document-upload/document-upload.component.js +6 -3
- package/esm2015/lib/components/documents/components/documents/documents.component.js +1 -1
- package/esm2015/lib/components/documents/services/documents.service.js +27 -4
- package/esm2015/lib/components/dynamic-fields-renderer/dynamic-fields-renderer/dynamic-fields-renderer.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/department-form/department-form.component.js +1 -1
- package/esm2015/lib/components/dynamic-form/components/dynamic-form-vocabulary-item/dynamic-form-vocabulary-item.component.js +7 -3
- package/esm2015/lib/components/dynamic-form/components/form-wrappers/vocabulary-wrapper/vocabulary-wrapper.component.js +1 -1
- package/esm2015/lib/components/filter/filter/filter.component.js +1 -1
- package/esm2015/lib/components/ndf-config-editor/services/dummy-data.js +2 -2
- package/esm2015/lib/components/ndf-filters/containers/filters-panel/filters-panel.component.js +62 -16
- package/esm2015/lib/components/ndf-filters/models/base-field-config.js +1 -1
- package/esm2015/lib/components/ndf-filters/pipes/check-condition.pipe.js +3 -3
- package/esm2015/lib/components/reports/ndf-reports/base/base-custom-report.js +55 -0
- package/esm2015/lib/components/reports/ndf-reports/base/base-report.js +3 -2
- package/esm2015/lib/components/reports/ndf-reports/base/index.js +5 -0
- package/esm2015/lib/components/reports/ndf-reports/charts-components/graph-chart/graph-chart.component.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/components/custom-report/custom-report.component.js +62 -0
- package/esm2015/lib/components/reports/ndf-reports/components/index.js +2 -1
- package/esm2015/lib/components/reports/ndf-reports/constants/charts-types.js +2 -1
- package/esm2015/lib/components/reports/ndf-reports/models/custom-definition.js +2 -0
- package/esm2015/lib/components/reports/ndf-reports/models/dialog-data.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/models/dynamic-line.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/models/graph-definition.js +2 -0
- package/esm2015/lib/components/reports/ndf-reports/models/index.js +3 -2
- package/esm2015/lib/components/reports/ndf-reports/models/report-config.js +1 -1
- package/esm2015/lib/components/reports/ndf-reports/ndf-reports.module.js +4 -3
- package/esm2015/lib/components/reports/ndf-reports/services/custom-reports-registry.service.js +132 -0
- package/esm2015/lib/components/reports/ndf-reports/services/index.js +2 -1
- package/esm2015/lib/components/reports/ndf-reports/services/report-config-mapper.service.js +8 -1
- package/esm2015/lib/components/spell-checker-field/spell-checker-field.module.js +1 -1
- package/esm2015/lib/shared/components/nuxeo-dialog/nuxeo.dialog.js +7 -6
- package/esm2015/lib/shared/evaluator/evaluator.js +3 -2
- package/esm2015/lib/shared/evaluator/types.js +1 -1
- package/fesm2015/nuxeo-development-framework.js +659 -340
- package/fesm2015/nuxeo-development-framework.js.map +1 -1
- package/lib/components/documents/components/document-upload/document-upload.component.d.ts +2 -1
- package/lib/components/documents/services/documents.service.d.ts +1 -1
- package/lib/components/dynamic-form/components/dynamic-form-vocabulary-item/dynamic-form-vocabulary-item.component.d.ts +2 -1
- package/lib/components/ndf-filters/containers/filters-panel/filters-panel.component.d.ts +10 -3
- package/lib/components/ndf-filters/models/base-field-config.d.ts +2 -2
- package/lib/components/ndf-filters/pipes/check-condition.pipe.d.ts +1 -1
- package/lib/components/reports/ndf-reports/base/base-custom-report.d.ts +47 -0
- package/lib/components/reports/ndf-reports/base/index.d.ts +4 -0
- package/lib/components/reports/ndf-reports/components/_parts/report-actions/report-actions.component.d.ts +1 -0
- package/lib/components/reports/ndf-reports/components/custom-report/custom-report.component.d.ts +15 -0
- package/lib/components/reports/ndf-reports/components/index.d.ts +1 -0
- package/lib/components/reports/ndf-reports/constants/charts-types.d.ts +1 -0
- package/lib/components/reports/ndf-reports/containers/ndf-report/ndf-report.component.d.ts +1 -0
- package/lib/components/reports/ndf-reports/models/custom-definition.d.ts +12 -0
- package/lib/components/reports/ndf-reports/models/dialog-data.d.ts +1 -1
- package/lib/components/reports/ndf-reports/models/dynamic-line.d.ts +1 -1
- package/lib/components/reports/ndf-reports/models/index.d.ts +2 -1
- package/lib/components/reports/ndf-reports/models/report-config.d.ts +3 -2
- package/lib/components/reports/ndf-reports/ndf-reports.module.d.ts +21 -20
- package/lib/components/reports/ndf-reports/services/custom-reports-registry.service.d.ts +83 -0
- package/lib/components/reports/ndf-reports/services/index.d.ts +1 -0
- package/lib/components/reports/ndf-reports/services/report-config-mapper.service.d.ts +6 -1
- package/lib/shared/evaluator/types.d.ts +1 -1
- package/package.json +1 -1
- package/esm2015/lib/components/reports/ndf-reports/models/graph.js +0 -2
- /package/lib/components/reports/ndf-reports/models/{graph.d.ts → graph-definition.d.ts} +0 -0
|
@@ -1853,11 +1853,12 @@ class NdfNuxeoDialog extends BaseComponent {
|
|
|
1853
1853
|
}
|
|
1854
1854
|
}
|
|
1855
1855
|
isArrowFunction(fn) {
|
|
1856
|
-
const strFn = fn.toString();
|
|
1857
|
-
const firstIndex = strFn.indexOf(')');
|
|
1858
|
-
const lastIndex = strFn.indexOf('{') + 1;
|
|
1859
|
-
const target = strFn.substring(firstIndex, lastIndex).replace(' ', '');
|
|
1860
|
-
return lastIndex == 0 || target.includes('=>');
|
|
1856
|
+
// const strFn = fn.toString();
|
|
1857
|
+
// const firstIndex = strFn.indexOf(')');
|
|
1858
|
+
// const lastIndex = strFn.indexOf('{') + 1;
|
|
1859
|
+
// const target = strFn.substring(firstIndex, lastIndex).replace(' ', '');
|
|
1860
|
+
// return lastIndex == 0 || target.includes('=>');
|
|
1861
|
+
return true;
|
|
1861
1862
|
}
|
|
1862
1863
|
onClose() {
|
|
1863
1864
|
this.dialogRef.close();
|
|
@@ -5335,6 +5336,7 @@ class DynamicFormVocabularyItemComponent {
|
|
|
5335
5336
|
this.vocabularyType = '';
|
|
5336
5337
|
this.cacheable = true;
|
|
5337
5338
|
this.shwoAllValues = true;
|
|
5339
|
+
this.emitVocabulryRecordOnSelect = false;
|
|
5338
5340
|
/** Event emitted on value is selected */
|
|
5339
5341
|
this.onSelecting = new EventEmitter();
|
|
5340
5342
|
this.loading = false;
|
|
@@ -5384,7 +5386,8 @@ class DynamicFormVocabularyItemComponent {
|
|
|
5384
5386
|
}
|
|
5385
5387
|
getSelecteditems(selectedItems) {
|
|
5386
5388
|
this.propagateChange(this.selection);
|
|
5387
|
-
this.
|
|
5389
|
+
const value = this.emitVocabulryRecordOnSelect ? selectedItems : this.selection;
|
|
5390
|
+
this.onSelecting.emit(value);
|
|
5388
5391
|
}
|
|
5389
5392
|
writeValue(value) {
|
|
5390
5393
|
// if (value) { removed to allow reseting ui when resetting form
|
|
@@ -5415,7 +5418,7 @@ class DynamicFormVocabularyItemComponent {
|
|
|
5415
5418
|
}
|
|
5416
5419
|
}
|
|
5417
5420
|
DynamicFormVocabularyItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicFormVocabularyItemComponent, deps: [{ token: VocabularyApiService }, { token: i0.ChangeDetectorRef }, { token: i2$4.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
5418
|
-
DynamicFormVocabularyItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicFormVocabularyItemComponent, selector: "app-dynamic-form-vocabulary-item", inputs: { onlyIds: "onlyIds", bindValue: "bindValue", bindLabel: "bindLabel", placeholder: "placeholder", multiple: "multiple", searchable: "searchable", closeOnSelect: "closeOnSelect", hideSelectedItems: "hideSelectedItems", disabled: "disabled", vocabularyType: "vocabularyType", label: "label", cacheable: "cacheable", shwoAllValues: "shwoAllValues" }, outputs: { onSelecting: "onSelecting" }, viewQueries: [{ propertyName: "DynamicFormSelectItemComponent", first: true, predicate: DynamicFormSelectItemComponent, descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"label\">\r\n <div>\r\n <label class=\"select-label\"\r\n >{{ label | translate\r\n }}<span *ngIf=\"isRequired()\" class=\"text-danger mx-1\">*</span></label\r\n >\r\n </div>\r\n</ng-container>\r\n<app-dynamic-form-selectitem\r\n [voc]=\"true\"\r\n [vocId]=\"vocabularyType\"\r\n [data]=\"data\"\r\n [bindLabel]=\"bindLabel\"\r\n [bindValue]=\"bindValue\"\r\n [placeholder]=\"placeholder\"\r\n [multiple]=\"multiple\"\r\n [searchable]=\"searchable\"\r\n [closeOnSelect]=\"closeOnSelect\"\r\n [disabled]=\"disabled\"\r\n [hideSelectedItems]=\"hideSelectedItems\"\r\n [loading]=\"loading\"\r\n (onSelectItems)=\"getSelecteditems($event)\"\r\n [(ngModel)]=\"selection\"\r\n></app-dynamic-form-selectitem>\r\n<mat-error\r\n [attr.data-automation-id]=\"'card-textitem-error-'\"\r\n class=\"app-textitem-editable-error\"\r\n *ngIf=\"hasErrors()\"\r\n>\r\n <ul>\r\n <li *ngIf=\"control.errors.required\">\r\n {{ label | translate }} {{ \"VALIDATORS.REQUIRED\" | translate }}\r\n </li>\r\n </ul>\r\n</mat-error>\r\n", styles: [""], components: [{ type: DynamicFormSelectItemComponent, selector: "app-dynamic-form-selectitem", inputs: ["label", "bindValue", "bindLabel", "data", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "clear", "voc", "vocId", "loading"], outputs: ["onSelectItems"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i1$7.MatError, selector: "mat-error", inputs: ["id"] }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
5421
|
+
DynamicFormVocabularyItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicFormVocabularyItemComponent, selector: "app-dynamic-form-vocabulary-item", inputs: { onlyIds: "onlyIds", bindValue: "bindValue", bindLabel: "bindLabel", placeholder: "placeholder", multiple: "multiple", searchable: "searchable", closeOnSelect: "closeOnSelect", hideSelectedItems: "hideSelectedItems", disabled: "disabled", vocabularyType: "vocabularyType", label: "label", cacheable: "cacheable", shwoAllValues: "shwoAllValues", emitVocabulryRecordOnSelect: "emitVocabulryRecordOnSelect" }, outputs: { onSelecting: "onSelecting" }, viewQueries: [{ propertyName: "DynamicFormSelectItemComponent", first: true, predicate: DynamicFormSelectItemComponent, descendants: true }], ngImport: i0, template: "<ng-container *ngIf=\"label\">\r\n <div>\r\n <label class=\"select-label\"\r\n >{{ label | translate\r\n }}<span *ngIf=\"isRequired()\" class=\"text-danger mx-1\">*</span></label\r\n >\r\n </div>\r\n</ng-container>\r\n<app-dynamic-form-selectitem\r\n [voc]=\"true\"\r\n [vocId]=\"vocabularyType\"\r\n [data]=\"data\"\r\n [bindLabel]=\"bindLabel\"\r\n [bindValue]=\"bindValue\"\r\n [placeholder]=\"placeholder\"\r\n [multiple]=\"multiple\"\r\n [searchable]=\"searchable\"\r\n [closeOnSelect]=\"closeOnSelect\"\r\n [disabled]=\"disabled\"\r\n [hideSelectedItems]=\"hideSelectedItems\"\r\n [loading]=\"loading\"\r\n (onSelectItems)=\"getSelecteditems($event)\"\r\n [(ngModel)]=\"selection\"\r\n></app-dynamic-form-selectitem>\r\n<mat-error\r\n [attr.data-automation-id]=\"'card-textitem-error-'\"\r\n class=\"app-textitem-editable-error\"\r\n *ngIf=\"hasErrors()\"\r\n>\r\n <ul>\r\n <li *ngIf=\"control.errors.required\">\r\n {{ label | translate }} {{ \"VALIDATORS.REQUIRED\" | translate }}\r\n </li>\r\n </ul>\r\n</mat-error>\r\n", styles: [""], components: [{ type: DynamicFormSelectItemComponent, selector: "app-dynamic-form-selectitem", inputs: ["label", "bindValue", "bindLabel", "data", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "clear", "voc", "vocId", "loading"], outputs: ["onSelectItems"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i1$7.MatError, selector: "mat-error", inputs: ["id"] }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
5419
5422
|
__decorate([
|
|
5420
5423
|
Cacheable({
|
|
5421
5424
|
maxCacheCount: 1000,
|
|
@@ -5464,6 +5467,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
5464
5467
|
type: Input
|
|
5465
5468
|
}], shwoAllValues: [{
|
|
5466
5469
|
type: Input
|
|
5470
|
+
}], emitVocabulryRecordOnSelect: [{
|
|
5471
|
+
type: Input
|
|
5467
5472
|
}], onSelecting: [{
|
|
5468
5473
|
type: Output
|
|
5469
5474
|
}], getCacheableVocabularyList: [] } });
|
|
@@ -5585,7 +5590,7 @@ class CorrespondenceRelationCreateFormComponent {
|
|
|
5585
5590
|
}
|
|
5586
5591
|
}
|
|
5587
5592
|
CorrespondenceRelationCreateFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CorrespondenceRelationCreateFormComponent, deps: [{ token: i2$4.FormBuilder }, { token: CorrespondenceRelationService }, { token: CustomToastrService }, { token: i1$3.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component });
|
|
5588
|
-
CorrespondenceRelationCreateFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CorrespondenceRelationCreateFormComponent, selector: "cts-correspondence-relation-create-form", viewQueries: [{ propertyName: "auto", first: true, predicate: ["auto"], descendants: true }], ngImport: i0, template: "<div\r\n class=\"correspondence-relation-container\"\r\n SetDirRtl\r\n style=\"height: 80%; width: 100%\"\r\n>\r\n <div class=\"correspondence-relation-title\">\r\n {{ \"correspondence-relation.add\" | translate }}\r\n </div>\r\n <!-- <mat-divider></mat-divider> -->\r\n <div mat-dialog-content [formGroup]=\"createform\">\r\n <div class=\"vocabulary-list\">\r\n <app-dynamic-form-vocabulary-item\r\n [label]=\"'correspondence-relation.relation-type'\"\r\n [bindLabel]=\"'label'\"\r\n [bindValue]=\"'id'\"\r\n placeholder=\"{{ 'VOCABULARY.SELECT_ITEM' | translate }}\"\r\n [multiple]=\"false\"\r\n [searchable]=\"false\"\r\n [closeOnSelect]=\"true\"\r\n [hideSelectedItems]=\"false\"\r\n [vocabularyType]=\"'VOC_CorrespondenceRelationsNames'\"\r\n formControlName=\"relationname\"\r\n (onSelecting)=\"reset()\"\r\n >\r\n </app-dynamic-form-vocabulary-item>\r\n </div>\r\n\r\n <div class=\"search-container\" *ngIf=\"createform.value.relationname\">\r\n <ng-autocomplete\r\n #auto\r\n [data]=\"documentList\"\r\n [searchKeyword]=\"'filter'\"\r\n (selected)=\"selectItem($event)\"\r\n (inputChanged)=\"onSearchInputChange($event)\"\r\n [customFilter]=\"disableFilter\"\r\n (closed)=\"keep_Autocomplete_Results_Open()\"\r\n [itemTemplate]=\"itemTemplate\"\r\n [notFoundTemplate]=\"notFoundTemplate\"\r\n [placeholder]=\"'correspondence-relation.searchby' | translate\"\r\n [debounceTime]=\"1000\"\r\n [isLoading]=\"isLoading\"\r\n (inputCleared)=\"inputCleared()\"\r\n >\r\n </ng-autocomplete>\r\n\r\n <ng-template #itemTemplate let-item>\r\n <div class=\"item\">\r\n <span>{{ item.title }}</span>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template #notFoundTemplate>\r\n <div>{{ \"correspondence-relation.notfound\" | translate }}</div>\r\n </ng-template>\r\n\r\n <div class=\"chip-list\" *ngIf=\"related_corr.length > 0\">\r\n <mat-chip-list #chipList aria-label=\"corr selection\">\r\n <mat-chip\r\n *ngFor=\"let corr of related_corr\"\r\n [selectable]=\"selectable\"\r\n [removable]=\"removable\"\r\n (removed)=\"on_remove_relation_Chip(corr)\"\r\n >\r\n {{ corr.title }}\r\n <mat-icon matChipRemove *ngIf=\"removable\">cancel</mat-icon>\r\n </mat-chip>\r\n </mat-chip-list>\r\n </div>\r\n <div class=\"exist-relation\" *ngIf=\"exist\">\r\n <span> {{ \"correspondence-relation.exist\" | translate }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"button-group d-flex flex-row-reverse\">\r\n <cts-button\r\n [theme]=\"'danger'\"\r\n size=\"'regular'\"\r\n [loading]=\"saving\"\r\n class=\"voc-form-close\"\r\n mat-dialog-close\r\n >\r\n {{ \"BUTTONS.CLOSE\" | translate }}\r\n </cts-button>\r\n <cts-button\r\n (onClick)=\"onSaveClick()\"\r\n [theme]=\"'primary'\"\r\n size=\"'regular'\"\r\n [disabled]=\"\r\n !this.createform.controls.relationname.valid || related_corr.length == 0\r\n \"\r\n >\r\n {{ \"correspondence-relation.save\" | translate }}\r\n </cts-button>\r\n </div>\r\n</div>\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}.correspondence-relation-container{padding:20px}.correspondence-relation-container .correspondence-relation-title{margin-bottom:8px;font-size:20px;color:#465573}.correspondence-relation-container .mat-dialog-content{height:100%;width:100%}.correspondence-relation-container .button-group{margin-top:12px;grid-column-gap:6px!important;column-gap:6px!important}.correspondence-relation-container .button-group cts-button{width:16%}@media (max-width: 992px){.correspondence-relation-container .button-group cts-button{width:20%}}@media only screen and (max-width: 768px){.correspondence-relation-container .button-group cts-button{width:28%}}.correspondence-relation-container .item{margin:1px;padding:8px 10px;font-size:.75rem}.correspondence-relation-container .dialog-actions button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:70px;border-radius:3px}.correspondence-relation-container .dialog-actions button:disabled{opacity:.4;cursor:not-allowed}.correspondence-relation-container .dialog-actions button:hover{opacity:.7}.correspondence-relation-container .autocomplete-container .suggestions-container ul{max-height:150px!important}.correspondence-relation-container .autocomplete-container .suggestions-container{height:150px!important;margin-top:10px;max-height:150px!important;border:1px lightgray solid!important;box-shadow:none!important}.correspondence-relation-container .search-container{position:relative}.correspondence-relation-container .chip-list{max-height:150px;border:1px lightgray solid;overflow:scroll;padding:10px;margin-bottom:10px;top:215px;position:absolute;width:100%}.correspondence-relation-container .chip-list .mat-standard-chip{border-radius:5px!important}.correspondence-relation-container .chip-list .mat-chip.mat-standard-chip{background-color:#8f98aa1a!important;height:auto}.correspondence-relation-container .autocomplete-container{box-shadow:none!important}.correspondence-relation-container .autocomplete-container .input-container input{background-color:#8f98aa1a!important;padding:10px!important}.correspondence-relation-container .exist-relation{background-color:#f8d7da!important;color:#842029!important;border-color:#f5c2c7!important;position:absolute;width:100%;top:300px}.correspondence-relation-container .autocomplete-container .suggestions-container .complete-selected,.correspondence-relation-container .autocomplete-container .suggestions-container ul li:hover{background-color:#8f98aa1a!important}.correspondence-relation-container .vocabulary-list{margin-bottom:10px}.correspondence-relation-container .vocabulary-list .mat-error{display:none!important}.correspondence-relation-container .mat-dialog-content{margin:3px 0 0!important;padding:0!important}[dir=rtl] .input-container input{direction:rtl}[dir=rtl] .x{left:10px;right:auto!important}\n"], components: [{ type: DynamicFormVocabularyItemComponent, selector: "app-dynamic-form-vocabulary-item", inputs: ["onlyIds", "bindValue", "bindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "vocabularyType", "label", "cacheable", "shwoAllValues"], outputs: ["onSelecting"] }, { type: i6.AutocompleteComponent, selector: "ng-autocomplete", inputs: ["data", "searchKeyword", "placeholder", "heading", "initialValue", "historyIdentifier", "historyHeading", "historyListMaxNumber", "notFoundText", "isLoading", "debounceTime", "disabled", "minQueryLength", "focusFirst", "customFilter", "selectedValueRender", "itemTemplate", "notFoundTemplate"], outputs: ["selected", "inputChanged", "inputFocused", "inputCleared", "opened", "closed", "scrolledToEnd"] }, { type: i7$1.MatChipList, selector: "mat-chip-list", inputs: ["aria-orientation", "multiple", "compareWith", "value", "required", "placeholder", "disabled", "selectable", "tabIndex", "errorStateMatcher"], outputs: ["change", "valueChange"], exportAs: ["matChipList"] }, { type: i2$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: ButtonComponent, selector: "cts-button", inputs: ["disabled", "loading", "size", "theme", "spinnerTheming"], outputs: ["onClick"] }], directives: [{ type: SetDirRtlDirective, selector: "[SetDirRtl]" }, { type: i1$3.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i2$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$4.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7$1.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["color", "disableRipple", "tabIndex", "selected", "value", "selectable", "disabled", "removable"], outputs: ["selectionChange", "destroyed", "removed"], exportAs: ["matChip"] }, { type: i7$1.MatChipRemove, selector: "[matChipRemove]" }, { type: i1$3.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["type", "mat-dialog-close", "aria-label", "matDialogClose"], exportAs: ["matDialogClose"] }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
5593
|
+
CorrespondenceRelationCreateFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CorrespondenceRelationCreateFormComponent, selector: "cts-correspondence-relation-create-form", viewQueries: [{ propertyName: "auto", first: true, predicate: ["auto"], descendants: true }], ngImport: i0, template: "<div\r\n class=\"correspondence-relation-container\"\r\n SetDirRtl\r\n style=\"height: 80%; width: 100%\"\r\n>\r\n <div class=\"correspondence-relation-title\">\r\n {{ \"correspondence-relation.add\" | translate }}\r\n </div>\r\n <!-- <mat-divider></mat-divider> -->\r\n <div mat-dialog-content [formGroup]=\"createform\">\r\n <div class=\"vocabulary-list\">\r\n <app-dynamic-form-vocabulary-item\r\n [label]=\"'correspondence-relation.relation-type'\"\r\n [bindLabel]=\"'label'\"\r\n [bindValue]=\"'id'\"\r\n placeholder=\"{{ 'VOCABULARY.SELECT_ITEM' | translate }}\"\r\n [multiple]=\"false\"\r\n [searchable]=\"false\"\r\n [closeOnSelect]=\"true\"\r\n [hideSelectedItems]=\"false\"\r\n [vocabularyType]=\"'VOC_CorrespondenceRelationsNames'\"\r\n formControlName=\"relationname\"\r\n (onSelecting)=\"reset()\"\r\n >\r\n </app-dynamic-form-vocabulary-item>\r\n </div>\r\n\r\n <div class=\"search-container\" *ngIf=\"createform.value.relationname\">\r\n <ng-autocomplete\r\n #auto\r\n [data]=\"documentList\"\r\n [searchKeyword]=\"'filter'\"\r\n (selected)=\"selectItem($event)\"\r\n (inputChanged)=\"onSearchInputChange($event)\"\r\n [customFilter]=\"disableFilter\"\r\n (closed)=\"keep_Autocomplete_Results_Open()\"\r\n [itemTemplate]=\"itemTemplate\"\r\n [notFoundTemplate]=\"notFoundTemplate\"\r\n [placeholder]=\"'correspondence-relation.searchby' | translate\"\r\n [debounceTime]=\"1000\"\r\n [isLoading]=\"isLoading\"\r\n (inputCleared)=\"inputCleared()\"\r\n >\r\n </ng-autocomplete>\r\n\r\n <ng-template #itemTemplate let-item>\r\n <div class=\"item\">\r\n <span>{{ item.title }}</span>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template #notFoundTemplate>\r\n <div>{{ \"correspondence-relation.notfound\" | translate }}</div>\r\n </ng-template>\r\n\r\n <div class=\"chip-list\" *ngIf=\"related_corr.length > 0\">\r\n <mat-chip-list #chipList aria-label=\"corr selection\">\r\n <mat-chip\r\n *ngFor=\"let corr of related_corr\"\r\n [selectable]=\"selectable\"\r\n [removable]=\"removable\"\r\n (removed)=\"on_remove_relation_Chip(corr)\"\r\n >\r\n {{ corr.title }}\r\n <mat-icon matChipRemove *ngIf=\"removable\">cancel</mat-icon>\r\n </mat-chip>\r\n </mat-chip-list>\r\n </div>\r\n <div class=\"exist-relation\" *ngIf=\"exist\">\r\n <span> {{ \"correspondence-relation.exist\" | translate }}</span>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"button-group d-flex flex-row-reverse\">\r\n <cts-button\r\n [theme]=\"'danger'\"\r\n size=\"'regular'\"\r\n [loading]=\"saving\"\r\n class=\"voc-form-close\"\r\n mat-dialog-close\r\n >\r\n {{ \"BUTTONS.CLOSE\" | translate }}\r\n </cts-button>\r\n <cts-button\r\n (onClick)=\"onSaveClick()\"\r\n [theme]=\"'primary'\"\r\n size=\"'regular'\"\r\n [disabled]=\"\r\n !this.createform.controls.relationname.valid || related_corr.length == 0\r\n \"\r\n >\r\n {{ \"correspondence-relation.save\" | translate }}\r\n </cts-button>\r\n </div>\r\n</div>\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}.correspondence-relation-container{padding:20px}.correspondence-relation-container .correspondence-relation-title{margin-bottom:8px;font-size:20px;color:#465573}.correspondence-relation-container .mat-dialog-content{height:100%;width:100%}.correspondence-relation-container .button-group{margin-top:12px;grid-column-gap:6px!important;column-gap:6px!important}.correspondence-relation-container .button-group cts-button{width:16%}@media (max-width: 992px){.correspondence-relation-container .button-group cts-button{width:20%}}@media only screen and (max-width: 768px){.correspondence-relation-container .button-group cts-button{width:28%}}.correspondence-relation-container .item{margin:1px;padding:8px 10px;font-size:.75rem}.correspondence-relation-container .dialog-actions button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:70px;border-radius:3px}.correspondence-relation-container .dialog-actions button:disabled{opacity:.4;cursor:not-allowed}.correspondence-relation-container .dialog-actions button:hover{opacity:.7}.correspondence-relation-container .autocomplete-container .suggestions-container ul{max-height:150px!important}.correspondence-relation-container .autocomplete-container .suggestions-container{height:150px!important;margin-top:10px;max-height:150px!important;border:1px lightgray solid!important;box-shadow:none!important}.correspondence-relation-container .search-container{position:relative}.correspondence-relation-container .chip-list{max-height:150px;border:1px lightgray solid;overflow:scroll;padding:10px;margin-bottom:10px;top:215px;position:absolute;width:100%}.correspondence-relation-container .chip-list .mat-standard-chip{border-radius:5px!important}.correspondence-relation-container .chip-list .mat-chip.mat-standard-chip{background-color:#8f98aa1a!important;height:auto}.correspondence-relation-container .autocomplete-container{box-shadow:none!important}.correspondence-relation-container .autocomplete-container .input-container input{background-color:#8f98aa1a!important;padding:10px!important}.correspondence-relation-container .exist-relation{background-color:#f8d7da!important;color:#842029!important;border-color:#f5c2c7!important;position:absolute;width:100%;top:300px}.correspondence-relation-container .autocomplete-container .suggestions-container .complete-selected,.correspondence-relation-container .autocomplete-container .suggestions-container ul li:hover{background-color:#8f98aa1a!important}.correspondence-relation-container .vocabulary-list{margin-bottom:10px}.correspondence-relation-container .vocabulary-list .mat-error{display:none!important}.correspondence-relation-container .mat-dialog-content{margin:3px 0 0!important;padding:0!important}[dir=rtl] .input-container input{direction:rtl}[dir=rtl] .x{left:10px;right:auto!important}\n"], components: [{ type: DynamicFormVocabularyItemComponent, selector: "app-dynamic-form-vocabulary-item", inputs: ["onlyIds", "bindValue", "bindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "vocabularyType", "label", "cacheable", "shwoAllValues", "emitVocabulryRecordOnSelect"], outputs: ["onSelecting"] }, { type: i6.AutocompleteComponent, selector: "ng-autocomplete", inputs: ["data", "searchKeyword", "placeholder", "heading", "initialValue", "historyIdentifier", "historyHeading", "historyListMaxNumber", "notFoundText", "isLoading", "debounceTime", "disabled", "minQueryLength", "focusFirst", "customFilter", "selectedValueRender", "itemTemplate", "notFoundTemplate"], outputs: ["selected", "inputChanged", "inputFocused", "inputCleared", "opened", "closed", "scrolledToEnd"] }, { type: i7$1.MatChipList, selector: "mat-chip-list", inputs: ["aria-orientation", "multiple", "compareWith", "value", "required", "placeholder", "disabled", "selectable", "tabIndex", "errorStateMatcher"], outputs: ["change", "valueChange"], exportAs: ["matChipList"] }, { type: i2$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: ButtonComponent, selector: "cts-button", inputs: ["disabled", "loading", "size", "theme", "spinnerTheming"], outputs: ["onClick"] }], directives: [{ type: SetDirRtlDirective, selector: "[SetDirRtl]" }, { type: i1$3.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { type: i2$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$4.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7$1.MatChip, selector: "mat-basic-chip, [mat-basic-chip], mat-chip, [mat-chip]", inputs: ["color", "disableRipple", "tabIndex", "selected", "value", "selectable", "disabled", "removable"], outputs: ["selectionChange", "destroyed", "removed"], exportAs: ["matChip"] }, { type: i7$1.MatChipRemove, selector: "[matChipRemove]" }, { type: i1$3.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["type", "mat-dialog-close", "aria-label", "matDialogClose"], exportAs: ["matDialogClose"] }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
5589
5594
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CorrespondenceRelationCreateFormComponent, decorators: [{
|
|
5590
5595
|
type: Component,
|
|
5591
5596
|
args: [{
|
|
@@ -5848,12 +5853,35 @@ class DocumentsService {
|
|
|
5848
5853
|
throw err;
|
|
5849
5854
|
}));
|
|
5850
5855
|
}
|
|
5851
|
-
uploadBatch(files) {
|
|
5856
|
+
uploadBatch(files, extraHeaders = {}) {
|
|
5852
5857
|
return combineLatest([
|
|
5853
5858
|
...files.map((file) => {
|
|
5854
5859
|
const nuxeoBlob = this.nuxeoService.createBlob(file);
|
|
5855
|
-
|
|
5856
|
-
|
|
5860
|
+
const fileName = file.name;
|
|
5861
|
+
const batch = this.nuxeoService.nuxeoClient.batchUpload();
|
|
5862
|
+
if (Object.keys(extraHeaders).length != 0) {
|
|
5863
|
+
return from(batch.upload(nuxeoBlob).then((uploaded) => {
|
|
5864
|
+
// Custom reupload with headers
|
|
5865
|
+
const formData = new FormData();
|
|
5866
|
+
const namedFile = new File([nuxeoBlob.content], fileName, {
|
|
5867
|
+
type: nuxeoBlob.content.type,
|
|
5868
|
+
});
|
|
5869
|
+
formData.append('file', namedFile);
|
|
5870
|
+
return this.nuxeoService.nuxeoClient._http({
|
|
5871
|
+
method: 'POST',
|
|
5872
|
+
url: `${this.environment.nuxeo}/api/v1/upload/${uploaded.batch._batchId}/${uploaded.blob.fileIdx}`,
|
|
5873
|
+
body: formData,
|
|
5874
|
+
headers: Object.assign(Object.assign({}, extraHeaders), { 'X-File-Name': file.name, 'X-File-Type': file.type, 'X-Batch-No-Drop': true }),
|
|
5875
|
+
}).then(() => ({
|
|
5876
|
+
batchId: uploaded.batch._batchId,
|
|
5877
|
+
fileIdx: uploaded.blob.fileIdx,
|
|
5878
|
+
}));
|
|
5879
|
+
}));
|
|
5880
|
+
}
|
|
5881
|
+
else {
|
|
5882
|
+
return from(this.nuxeoService.nuxeoClient.batchUpload().upload(nuxeoBlob));
|
|
5883
|
+
}
|
|
5884
|
+
})
|
|
5857
5885
|
]).pipe(map((uploadedFiles) => {
|
|
5858
5886
|
files.forEach((file, i) => {
|
|
5859
5887
|
uploadedFiles[i].title = file.name;
|
|
@@ -9286,7 +9314,7 @@ class DepartmentFormComponent extends BaseDialogComponent {
|
|
|
9286
9314
|
}
|
|
9287
9315
|
}
|
|
9288
9316
|
DepartmentFormComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DepartmentFormComponent, deps: [{ token: MAT_DIALOG_DATA }, { token: i1$3.MatDialogRef }, { token: CustomToastrService }, { token: DepartmentApiService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
9289
|
-
DepartmentFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DepartmentFormComponent, selector: "cts-department-form", usesInheritance: true, ngImport: i0, template: "<ndf-nuxeo-dialog\r\n\tdialogTitle=\"{{\r\n\t\t'department_management.form.' + (updateMode ? 'updateHeader' : 'header')\r\n\t\t\t| translate\r\n\t}}\"\r\n\tpanelClass=\"voc-form\"\r\n>\r\n\t<ng-template #contentTemplate>\r\n\t\t<form [formGroup]=\"departmentForm\" class=\"row voc-form-body\">\r\n\t\t\t<div class=\"col-lg-6 col-12\">\r\n\t\t\t\t<app-dynamic-form-textitem\r\n\t\t\t\t\tformControlName=\"title\"\r\n\t\t\t\t\t[label]=\"'department_management.form.title'\"\r\n\t\t\t\t\t[disabled]=\"updateMode\"\r\n\t\t\t\t\t[preventSpace]=\"true\"\r\n\t\t\t\t></app-dynamic-form-textitem>\r\n\t\t\t\t<div class=\"hint-msg\">\r\n\t\t\t\t\t{{ 'department_management.form.hintMsg' | translate }}\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<app-dynamic-form-textitem\r\n\t\t\t\tclass=\"col-lg-6 col-12\"\r\n\t\t\t\tformControlName=\"arabicName\"\r\n\t\t\t\t[label]=\"'department_management.form.ArabicName'\"\r\n\t\t\t></app-dynamic-form-textitem>\r\n\t\t\t<app-dynamic-form-textitem\r\n\t\t\t\tclass=\"col-lg-6 col-12\"\r\n\t\t\t\tformControlName=\"englishName\"\r\n\t\t\t\t[label]=\"'department_management.form.EnglishName'\"\r\n\t\t\t></app-dynamic-form-textitem>\r\n\t\t\t<app-dynamic-form-vocabulary-item\r\n\t\t\t\t*ngIf=\"data.displayDepTypee\"\r\n\t\t\t\tclass=\"col-lg-6 col-12\"\r\n\t\t\t\t[label]=\"'department_management.form.deptTypee'\"\r\n\t\t\t\t[bindLabel]=\"'label'\"\r\n\t\t\t\t[bindValue]=\"'id'\"\r\n\t\t\t\tplaceholder=\"{{ 'VOCABULARY.SELECT_ITEM' | translate }}\"\r\n\t\t\t\t[multiple]=\"false\"\r\n\t\t\t\t[searchable]=\"false\"\r\n\t\t\t\t[closeOnSelect]=\"true\"\r\n\t\t\t\t[hideSelectedItems]=\"false\"\r\n\t\t\t\t[vocabularyType]=\"'VOC_DepartmentType'\"\r\n\t\t\t\tformControlName=\"deptTypee\"\r\n\t\t\t>\r\n\t\t\t</app-dynamic-form-vocabulary-item>\r\n\t\t\t<app-dynamic-form-textitem\r\n\t\t\t\tclass=\"col-lg-6 col-12\"\r\n\t\t\t\tformControlName=\"description\"\r\n\t\t\t\t[label]=\"'department_management.form.Description'\"\r\n\t\t\t></app-dynamic-form-textitem>\r\n\r\n\t\t\t<cts-dynamic-form-slide-toggleitem\r\n\t\t\t\t*ngIf=\"data.displayIsAllowRecExternal\"\r\n\t\t\t\tclass=\"col-lg-6 col-12 isAllowRecExternal\"\r\n\t\t\t\tformControlName=\"isAllowRecExternal\"\r\n\t\t\t\t[label]=\"'department_management.form.isAllowRecExternal'\"\r\n\t\t\t></cts-dynamic-form-slide-toggleitem>\r\n\t\t</form>\r\n\t</ng-template>\r\n\r\n\t<ng-template #actionsTemplate let-dialog=\"dialog\">\r\n\t\t<button\r\n\t\t\t(click)=\"dialog.executeAction(createDocument)\"\r\n\t\t\t[disabled]=\"\r\n\t\t\t\tscannerUploadButton?.disabled ||\r\n\t\t\t\t!selectedFile?.dynamicData.valid ||\r\n\t\t\t\tfileForm.invalid\r\n\t\t\t\"\r\n\t\t\t[ngClass]=\"{\r\n\t\t\t\t'opacity-30 cursor-not-allowed':\r\n\t\t\t\t\tscannerUploadButton?.disabled ||\r\n\t\t\t\t\t!selectedFile?.dynamicData.valid ||\r\n\t\t\t\t\tfileForm.invalid\r\n\t\t\t}\"\r\n\t\t\tclass=\"submission-button\"\r\n\t\t>\r\n\t\t\t{{\r\n\t\t\t\tuploadMangmentService?.scanCreationFailed\r\n\t\t\t\t\t? ('BUTTONS.TRY_AGAIN' | translate)\r\n\t\t\t\t\t: ('BUTTONS.CREATE' | translate)\r\n\t\t\t}}\r\n\t\t</button>\r\n\r\n\t\t<button\r\n\t\t\t*ngIf=\"!updateMode\"\r\n\t\t\t(click)=\"dialog.executeAction(save)\"\r\n\t\t\t[disabled]=\"departmentForm.invalid\"\r\n\t\t\tclass=\"voc-form-submit\"\r\n\t\t>\r\n\t\t\t{{ 'BUTTONS.SAVE' | translate }}\r\n\t\t</button>\r\n\r\n\t\t<button\r\n\t\t\t*ngIf=\"updateMode\"\r\n\t\t\t(click)=\"dialog.executeAction(update)\"\r\n\t\t\t[disabled]=\"departmentForm.invalid\"\r\n\t\t\tclass=\"voc-form-submit\"\r\n\t\t>\r\n\t\t\t{{ 'BUTTONS.UPDATE' | translate }}\r\n\t\t</button>\r\n\t</ng-template>\r\n</ndf-nuxeo-dialog>\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}.voc-form{padding:20px}.voc-form .hint-msg{font-size:12px;font-style:italic;margin-top:2px;color:#6a768e}.voc-form .voc-form-hedaer{margin-bottom:8px;font-size:20px;color:#465573}.voc-form .button-group{margin-top:12px;grid-column-gap:6px!important;column-gap:6px!important}.voc-form .button-group cts-button{width:16%}@media (max-width: 992px){.voc-form .button-group cts-button{width:20%}}@media only screen and (max-width: 768px){.voc-form .button-group cts-button{width:28%}}.voc-form .isAllowRecExternal{display:flex;align-items:center;margin-top:26px;overflow:hidden}@media only screen and (max-width: 768px){.voc-form .isAllowRecExternal{font-size:12px}}\n"], components: [{ type: NdfNuxeoDialog, selector: "ndf-nuxeo-dialog", inputs: ["dialogTitle", "subTitle", "panelClass", "loaderMode"] }, { 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: ["onlyIds", "bindValue", "bindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "vocabularyType", "label", "cacheable", "shwoAllValues"], outputs: ["onSelecting"] }, { type: DynamicFormSlideToggleitemComponent, selector: "cts-dynamic-form-slide-toggleitem", inputs: ["label", "disabled", "checked", "theme"], outputs: ["onToggle"] }], directives: [{ type: i2$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i2$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$4.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], pipes: { "translate": i1.TranslatePipe } });
|
|
9317
|
+
DepartmentFormComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DepartmentFormComponent, selector: "cts-department-form", usesInheritance: true, ngImport: i0, template: "<ndf-nuxeo-dialog\r\n\tdialogTitle=\"{{\r\n\t\t'department_management.form.' + (updateMode ? 'updateHeader' : 'header')\r\n\t\t\t| translate\r\n\t}}\"\r\n\tpanelClass=\"voc-form\"\r\n>\r\n\t<ng-template #contentTemplate>\r\n\t\t<form [formGroup]=\"departmentForm\" class=\"row voc-form-body\">\r\n\t\t\t<div class=\"col-lg-6 col-12\">\r\n\t\t\t\t<app-dynamic-form-textitem\r\n\t\t\t\t\tformControlName=\"title\"\r\n\t\t\t\t\t[label]=\"'department_management.form.title'\"\r\n\t\t\t\t\t[disabled]=\"updateMode\"\r\n\t\t\t\t\t[preventSpace]=\"true\"\r\n\t\t\t\t></app-dynamic-form-textitem>\r\n\t\t\t\t<div class=\"hint-msg\">\r\n\t\t\t\t\t{{ 'department_management.form.hintMsg' | translate }}\r\n\t\t\t\t</div>\r\n\t\t\t</div>\r\n\t\t\t<app-dynamic-form-textitem\r\n\t\t\t\tclass=\"col-lg-6 col-12\"\r\n\t\t\t\tformControlName=\"arabicName\"\r\n\t\t\t\t[label]=\"'department_management.form.ArabicName'\"\r\n\t\t\t></app-dynamic-form-textitem>\r\n\t\t\t<app-dynamic-form-textitem\r\n\t\t\t\tclass=\"col-lg-6 col-12\"\r\n\t\t\t\tformControlName=\"englishName\"\r\n\t\t\t\t[label]=\"'department_management.form.EnglishName'\"\r\n\t\t\t></app-dynamic-form-textitem>\r\n\t\t\t<app-dynamic-form-vocabulary-item\r\n\t\t\t\t*ngIf=\"data.displayDepTypee\"\r\n\t\t\t\tclass=\"col-lg-6 col-12\"\r\n\t\t\t\t[label]=\"'department_management.form.deptTypee'\"\r\n\t\t\t\t[bindLabel]=\"'label'\"\r\n\t\t\t\t[bindValue]=\"'id'\"\r\n\t\t\t\tplaceholder=\"{{ 'VOCABULARY.SELECT_ITEM' | translate }}\"\r\n\t\t\t\t[multiple]=\"false\"\r\n\t\t\t\t[searchable]=\"false\"\r\n\t\t\t\t[closeOnSelect]=\"true\"\r\n\t\t\t\t[hideSelectedItems]=\"false\"\r\n\t\t\t\t[vocabularyType]=\"'VOC_DepartmentType'\"\r\n\t\t\t\tformControlName=\"deptTypee\"\r\n\t\t\t>\r\n\t\t\t</app-dynamic-form-vocabulary-item>\r\n\t\t\t<app-dynamic-form-textitem\r\n\t\t\t\tclass=\"col-lg-6 col-12\"\r\n\t\t\t\tformControlName=\"description\"\r\n\t\t\t\t[label]=\"'department_management.form.Description'\"\r\n\t\t\t></app-dynamic-form-textitem>\r\n\r\n\t\t\t<cts-dynamic-form-slide-toggleitem\r\n\t\t\t\t*ngIf=\"data.displayIsAllowRecExternal\"\r\n\t\t\t\tclass=\"col-lg-6 col-12 isAllowRecExternal\"\r\n\t\t\t\tformControlName=\"isAllowRecExternal\"\r\n\t\t\t\t[label]=\"'department_management.form.isAllowRecExternal'\"\r\n\t\t\t></cts-dynamic-form-slide-toggleitem>\r\n\t\t</form>\r\n\t</ng-template>\r\n\r\n\t<ng-template #actionsTemplate let-dialog=\"dialog\">\r\n\t\t<button\r\n\t\t\t(click)=\"dialog.executeAction(createDocument)\"\r\n\t\t\t[disabled]=\"\r\n\t\t\t\tscannerUploadButton?.disabled ||\r\n\t\t\t\t!selectedFile?.dynamicData.valid ||\r\n\t\t\t\tfileForm.invalid\r\n\t\t\t\"\r\n\t\t\t[ngClass]=\"{\r\n\t\t\t\t'opacity-30 cursor-not-allowed':\r\n\t\t\t\t\tscannerUploadButton?.disabled ||\r\n\t\t\t\t\t!selectedFile?.dynamicData.valid ||\r\n\t\t\t\t\tfileForm.invalid\r\n\t\t\t}\"\r\n\t\t\tclass=\"submission-button\"\r\n\t\t>\r\n\t\t\t{{\r\n\t\t\t\tuploadMangmentService?.scanCreationFailed\r\n\t\t\t\t\t? ('BUTTONS.TRY_AGAIN' | translate)\r\n\t\t\t\t\t: ('BUTTONS.CREATE' | translate)\r\n\t\t\t}}\r\n\t\t</button>\r\n\r\n\t\t<button\r\n\t\t\t*ngIf=\"!updateMode\"\r\n\t\t\t(click)=\"dialog.executeAction(save)\"\r\n\t\t\t[disabled]=\"departmentForm.invalid\"\r\n\t\t\tclass=\"voc-form-submit\"\r\n\t\t>\r\n\t\t\t{{ 'BUTTONS.SAVE' | translate }}\r\n\t\t</button>\r\n\r\n\t\t<button\r\n\t\t\t*ngIf=\"updateMode\"\r\n\t\t\t(click)=\"dialog.executeAction(update)\"\r\n\t\t\t[disabled]=\"departmentForm.invalid\"\r\n\t\t\tclass=\"voc-form-submit\"\r\n\t\t>\r\n\t\t\t{{ 'BUTTONS.UPDATE' | translate }}\r\n\t\t</button>\r\n\t</ng-template>\r\n</ndf-nuxeo-dialog>\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}.voc-form{padding:20px}.voc-form .hint-msg{font-size:12px;font-style:italic;margin-top:2px;color:#6a768e}.voc-form .voc-form-hedaer{margin-bottom:8px;font-size:20px;color:#465573}.voc-form .button-group{margin-top:12px;grid-column-gap:6px!important;column-gap:6px!important}.voc-form .button-group cts-button{width:16%}@media (max-width: 992px){.voc-form .button-group cts-button{width:20%}}@media only screen and (max-width: 768px){.voc-form .button-group cts-button{width:28%}}.voc-form .isAllowRecExternal{display:flex;align-items:center;margin-top:26px;overflow:hidden}@media only screen and (max-width: 768px){.voc-form .isAllowRecExternal{font-size:12px}}\n"], components: [{ type: NdfNuxeoDialog, selector: "ndf-nuxeo-dialog", inputs: ["dialogTitle", "subTitle", "panelClass", "loaderMode"] }, { 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: ["onlyIds", "bindValue", "bindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "vocabularyType", "label", "cacheable", "shwoAllValues", "emitVocabulryRecordOnSelect"], outputs: ["onSelecting"] }, { type: DynamicFormSlideToggleitemComponent, selector: "cts-dynamic-form-slide-toggleitem", inputs: ["label", "disabled", "checked", "theme"], outputs: ["onToggle"] }], directives: [{ type: i2$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i2$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$4.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], pipes: { "translate": i1.TranslatePipe } });
|
|
9290
9318
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DepartmentFormComponent, decorators: [{
|
|
9291
9319
|
type: Component,
|
|
9292
9320
|
args: [{
|
|
@@ -11710,7 +11738,7 @@ class VocabularyWrapperComponent {
|
|
|
11710
11738
|
}
|
|
11711
11739
|
}
|
|
11712
11740
|
VocabularyWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: VocabularyWrapperComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
11713
|
-
VocabularyWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: VocabularyWrapperComponent, selector: "app-vocabulary-wrapper", inputs: { value: "value", vocId: "vocId", disabled: "disabled" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<app-dynamic-form-vocabulary-item *ngIf=\"vocId\"\r\n[bindLabel]=\"'displayLabel'\"\r\n[bindValue]=\"'id'\"\r\n[(ngModel)]=\"value\"\r\n(onSelecting)=\"executeFunction($event)\"\r\n[vocabularyType]=\"vocId\">\r\n</app-dynamic-form-vocabulary-item>\r\n<!-- <div>\r\n {{vocId | json}}\r\n</div> -->\r\n", styles: [""], components: [{ type: DynamicFormVocabularyItemComponent, selector: "app-dynamic-form-vocabulary-item", inputs: ["onlyIds", "bindValue", "bindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "vocabularyType", "label", "cacheable", "shwoAllValues"], outputs: ["onSelecting"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
|
|
11741
|
+
VocabularyWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: VocabularyWrapperComponent, selector: "app-vocabulary-wrapper", inputs: { value: "value", vocId: "vocId", disabled: "disabled" }, outputs: { valueChange: "valueChange" }, ngImport: i0, template: "<app-dynamic-form-vocabulary-item *ngIf=\"vocId\"\r\n[bindLabel]=\"'displayLabel'\"\r\n[bindValue]=\"'id'\"\r\n[(ngModel)]=\"value\"\r\n(onSelecting)=\"executeFunction($event)\"\r\n[vocabularyType]=\"vocId\">\r\n</app-dynamic-form-vocabulary-item>\r\n<!-- <div>\r\n {{vocId | json}}\r\n</div> -->\r\n", styles: [""], components: [{ type: DynamicFormVocabularyItemComponent, selector: "app-dynamic-form-vocabulary-item", inputs: ["onlyIds", "bindValue", "bindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "vocabularyType", "label", "cacheable", "shwoAllValues", "emitVocabulryRecordOnSelect"], outputs: ["onSelecting"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }] });
|
|
11714
11742
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: VocabularyWrapperComponent, decorators: [{
|
|
11715
11743
|
type: Component,
|
|
11716
11744
|
args: [{
|
|
@@ -18132,296 +18160,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
18132
18160
|
type: Input
|
|
18133
18161
|
}] } });
|
|
18134
18162
|
|
|
18135
|
-
class BaseField extends BaseCustomValueAccessor {
|
|
18136
|
-
constructor() {
|
|
18137
|
-
super(...arguments);
|
|
18138
|
-
this.dynamicComponent = this.injector.get(DynamicComponentLoaderService);
|
|
18139
|
-
}
|
|
18140
|
-
writeValue(obj) {
|
|
18141
|
-
var _a, _b, _c, _d;
|
|
18142
|
-
this.internalValue = obj;
|
|
18143
|
-
if ((_b = (_a = this._componentRef) === null || _a === void 0 ? void 0 : _a.instance) === null || _b === void 0 ? void 0 : _b.writeValue) {
|
|
18144
|
-
(_d = (_c = this._componentRef) === null || _c === void 0 ? void 0 : _c.instance) === null || _d === void 0 ? void 0 : _d.writeValue(obj);
|
|
18145
|
-
}
|
|
18146
|
-
}
|
|
18147
|
-
validate(control) {
|
|
18148
|
-
var _a, _b;
|
|
18149
|
-
if ((_b = (_a = this._componentRef) === null || _a === void 0 ? void 0 : _a.instance) === null || _b === void 0 ? void 0 : _b.validate) {
|
|
18150
|
-
return this._componentRef.instance.validate(control);
|
|
18151
|
-
}
|
|
18152
|
-
else {
|
|
18153
|
-
return null;
|
|
18154
|
-
}
|
|
18155
|
-
}
|
|
18156
|
-
registerOnValidatorChange(fn) {
|
|
18157
|
-
var _a, _b;
|
|
18158
|
-
if ((_b = (_a = this._componentRef) === null || _a === void 0 ? void 0 : _a.instance) === null || _b === void 0 ? void 0 : _b.registerOnValidatorChange) {
|
|
18159
|
-
this._componentRef.instance.registerOnValidatorChange(fn);
|
|
18160
|
-
}
|
|
18161
|
-
}
|
|
18162
|
-
ngOnChanges(changes) {
|
|
18163
|
-
if (!this._componentRef) {
|
|
18164
|
-
return;
|
|
18165
|
-
}
|
|
18166
|
-
Object.keys(changes).forEach((key) => {
|
|
18167
|
-
this._componentRef.instance[key] = changes[key].currentValue;
|
|
18168
|
-
});
|
|
18169
|
-
this._componentRef.changeDetectorRef.markForCheck();
|
|
18170
|
-
}
|
|
18171
|
-
ngOnDestroy() {
|
|
18172
|
-
if (this._componentRef) {
|
|
18173
|
-
this._componentRef.destroy();
|
|
18174
|
-
}
|
|
18175
|
-
}
|
|
18176
|
-
_prepareValueAccessor() {
|
|
18177
|
-
const ngControl = this.injector.get(NgControl);
|
|
18178
|
-
ngControl.valueAccessor = this._componentRef.instance;
|
|
18179
|
-
}
|
|
18180
|
-
}
|
|
18181
|
-
BaseField.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseField, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
18182
|
-
BaseField.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: BaseField, inputs: { fieldConfig: "fieldConfig" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["dynamicContainer"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0 });
|
|
18183
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseField, decorators: [{
|
|
18184
|
-
type: Directive
|
|
18185
|
-
}], propDecorators: { container: [{
|
|
18186
|
-
type: ViewChild,
|
|
18187
|
-
args: ['dynamicContainer', { read: ViewContainerRef, static: true }]
|
|
18188
|
-
}], fieldConfig: [{
|
|
18189
|
-
type: Input
|
|
18190
|
-
}] } });
|
|
18191
|
-
|
|
18192
|
-
class PredicateFieldComponent extends BaseField {
|
|
18193
|
-
constructor() {
|
|
18194
|
-
super(...arguments);
|
|
18195
|
-
this.handlers = {
|
|
18196
|
-
input: this._prepareField.bind(this),
|
|
18197
|
-
date: this._prepareField.bind(this)
|
|
18198
|
-
};
|
|
18199
|
-
}
|
|
18200
|
-
ngOnInit() {
|
|
18201
|
-
var _a, _b;
|
|
18202
|
-
const componentType = (_b = (_a = this.fieldConfig) === null || _a === void 0 ? void 0 : _a.render) === null || _b === void 0 ? void 0 : _b.type;
|
|
18203
|
-
if (componentType) {
|
|
18204
|
-
this._componentRef = this.dynamicComponent.renderComponent(componentType, this.container);
|
|
18205
|
-
this._prepareValueAccessor();
|
|
18206
|
-
this._prepareComponent(componentType);
|
|
18207
|
-
}
|
|
18208
|
-
}
|
|
18209
|
-
_prepareComponent(type) {
|
|
18210
|
-
var _a, _b;
|
|
18211
|
-
(_b = (_a = this.handlers)[type]) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
18212
|
-
}
|
|
18213
|
-
_prepareField() {
|
|
18214
|
-
const instance = this._componentRef.instance;
|
|
18215
|
-
instance.field = this.fieldConfig;
|
|
18216
|
-
}
|
|
18217
|
-
}
|
|
18218
|
-
PredicateFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PredicateFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
18219
|
-
PredicateFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PredicateFieldComponent, selector: "app-predicate-field", host: { properties: { "class": "'predicate-field' + ' predicate-field__fieldConfig?.render?.type' " } }, providers: [
|
|
18220
|
-
{
|
|
18221
|
-
provide: NG_VALUE_ACCESSOR,
|
|
18222
|
-
useExisting: forwardRef(() => PredicateFieldComponent),
|
|
18223
|
-
multi: true
|
|
18224
|
-
},
|
|
18225
|
-
{
|
|
18226
|
-
provide: NG_VALIDATORS,
|
|
18227
|
-
useExisting: forwardRef(() => PredicateFieldComponent),
|
|
18228
|
-
multi: true
|
|
18229
|
-
}
|
|
18230
|
-
], usesInheritance: true, ngImport: i0, template: "<field-header *ngIf=\"fieldConfig.label && !fieldConfig.render?.options?.hideLabel\" class=\"predicate-field__label\">{{\r\n\tfieldConfig.label | translate\r\n}}</field-header>\r\n\r\n<ng-container #dynamicContainer></ng-container>\r\n", styles: [".predicate-field{display:var(--pf-display, block);padding-inline:var(--pf-padding-inline, var(--ff-padding-inline, .5rem));padding-block:var(--pf-padding-block, var(--ff-padding-block, 0));max-width:100%}\n"], components: [{ type: FieldHeaderComponent, selector: "field-header" }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
18231
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PredicateFieldComponent, decorators: [{
|
|
18232
|
-
type: Component,
|
|
18233
|
-
args: [{
|
|
18234
|
-
selector: 'app-predicate-field',
|
|
18235
|
-
templateUrl: './predicate-field.component.html',
|
|
18236
|
-
styleUrls: ['./predicate-field.component.scss'],
|
|
18237
|
-
encapsulation: ViewEncapsulation.None,
|
|
18238
|
-
providers: [
|
|
18239
|
-
{
|
|
18240
|
-
provide: NG_VALUE_ACCESSOR,
|
|
18241
|
-
useExisting: forwardRef(() => PredicateFieldComponent),
|
|
18242
|
-
multi: true
|
|
18243
|
-
},
|
|
18244
|
-
{
|
|
18245
|
-
provide: NG_VALIDATORS,
|
|
18246
|
-
useExisting: forwardRef(() => PredicateFieldComponent),
|
|
18247
|
-
multi: true
|
|
18248
|
-
}
|
|
18249
|
-
],
|
|
18250
|
-
host: {
|
|
18251
|
-
'[class]': "'predicate-field' + ' predicate-field__fieldConfig?.render?.type' "
|
|
18252
|
-
}
|
|
18253
|
-
}]
|
|
18254
|
-
}] });
|
|
18255
|
-
|
|
18256
|
-
class AggregationFieldComponent extends BaseField {
|
|
18257
|
-
constructor() {
|
|
18258
|
-
super(...arguments);
|
|
18259
|
-
this.handlers = {
|
|
18260
|
-
[AGGREGATION_FIELD_TYPES.dropdown]: this._prepareField.bind(this),
|
|
18261
|
-
[AGGREGATION_FIELD_TYPES.checkbox]: this._prepareField.bind(this),
|
|
18262
|
-
[AGGREGATION_FIELD_TYPES.radio]: this._prepareField.bind(this),
|
|
18263
|
-
[AGGREGATION_FIELD_TYPES.switch]: this._prepareField.bind(this),
|
|
18264
|
-
[AGGREGATION_FIELD_TYPES.autocomplete]: this._prepareField.bind(this),
|
|
18265
|
-
[AGGREGATION_FIELD_TYPES.dateList]: this._prepareField.bind(this),
|
|
18266
|
-
[AGGREGATION_FIELD_TYPES.custom]: this._prepareField.bind(this),
|
|
18267
|
-
};
|
|
18268
|
-
}
|
|
18269
|
-
ngOnInit() {
|
|
18270
|
-
var _a, _b, _c, _d;
|
|
18271
|
-
const componentType = (_b = (_a = this.fieldConfig) === null || _a === void 0 ? void 0 : _a.render) === null || _b === void 0 ? void 0 : _b.type;
|
|
18272
|
-
if (componentType) {
|
|
18273
|
-
this._componentRef = this.dynamicComponent.renderComponent(componentType, this.container);
|
|
18274
|
-
this._prepareValueAccessor();
|
|
18275
|
-
(_d = (_c = this.handlers)[componentType]) === null || _d === void 0 ? void 0 : _d.call(_c);
|
|
18276
|
-
}
|
|
18277
|
-
}
|
|
18278
|
-
_prepareField() {
|
|
18279
|
-
const instance = this._componentRef
|
|
18280
|
-
.instance;
|
|
18281
|
-
instance.aggregation = this.aggregation;
|
|
18282
|
-
instance.fieldConfig = this.fieldConfig;
|
|
18283
|
-
if (this.contentTemplate) {
|
|
18284
|
-
instance.contentTemplate = this.contentTemplate;
|
|
18285
|
-
}
|
|
18286
|
-
}
|
|
18287
|
-
}
|
|
18288
|
-
AggregationFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AggregationFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
18289
|
-
AggregationFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: AggregationFieldComponent, selector: "app-aggregation-field", inputs: { aggregation: "aggregation", contentTemplate: "contentTemplate" }, host: { properties: { "class": "'aggregation-field' + ' aggregation-field__fieldConfig?.render?.type' " } }, providers: [
|
|
18290
|
-
{
|
|
18291
|
-
provide: NG_VALUE_ACCESSOR,
|
|
18292
|
-
useExisting: forwardRef(() => AggregationFieldComponent),
|
|
18293
|
-
multi: true,
|
|
18294
|
-
},
|
|
18295
|
-
{
|
|
18296
|
-
provide: NG_VALIDATORS,
|
|
18297
|
-
useExisting: forwardRef(() => AggregationFieldComponent),
|
|
18298
|
-
multi: true,
|
|
18299
|
-
},
|
|
18300
|
-
], usesInheritance: true, ngImport: i0, template: '<ng-container #dynamicContainer></ng-container>', isInline: true, styles: [""], encapsulation: i0.ViewEncapsulation.None });
|
|
18301
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AggregationFieldComponent, decorators: [{
|
|
18302
|
-
type: Component,
|
|
18303
|
-
args: [{
|
|
18304
|
-
selector: 'app-aggregation-field',
|
|
18305
|
-
template: '<ng-container #dynamicContainer></ng-container>',
|
|
18306
|
-
styles: [''],
|
|
18307
|
-
encapsulation: ViewEncapsulation.None,
|
|
18308
|
-
providers: [
|
|
18309
|
-
{
|
|
18310
|
-
provide: NG_VALUE_ACCESSOR,
|
|
18311
|
-
useExisting: forwardRef(() => AggregationFieldComponent),
|
|
18312
|
-
multi: true,
|
|
18313
|
-
},
|
|
18314
|
-
{
|
|
18315
|
-
provide: NG_VALIDATORS,
|
|
18316
|
-
useExisting: forwardRef(() => AggregationFieldComponent),
|
|
18317
|
-
multi: true,
|
|
18318
|
-
},
|
|
18319
|
-
],
|
|
18320
|
-
host: {
|
|
18321
|
-
'[class]': "'aggregation-field' + ' aggregation-field__fieldConfig?.render?.type' ",
|
|
18322
|
-
},
|
|
18323
|
-
}]
|
|
18324
|
-
}], propDecorators: { aggregation: [{
|
|
18325
|
-
type: Input
|
|
18326
|
-
}], contentTemplate: [{
|
|
18327
|
-
type: Input
|
|
18328
|
-
}] } });
|
|
18329
|
-
|
|
18330
|
-
class CustomFieldComponent extends BaseField {
|
|
18331
|
-
constructor() {
|
|
18332
|
-
super(...arguments);
|
|
18333
|
-
this.handlers = {
|
|
18334
|
-
activeUser: this._prepareField.bind(this),
|
|
18335
|
-
aggregationGroup: this._prepareField.bind(this)
|
|
18336
|
-
};
|
|
18337
|
-
}
|
|
18338
|
-
ngOnInit() {
|
|
18339
|
-
var _a, _b;
|
|
18340
|
-
const componentType = (_b = (_a = this.fieldConfig) === null || _a === void 0 ? void 0 : _a.render) === null || _b === void 0 ? void 0 : _b.type;
|
|
18341
|
-
if (componentType) {
|
|
18342
|
-
this._componentRef = this.dynamicComponent.renderComponent(componentType, this.container);
|
|
18343
|
-
this._prepareValueAccessor();
|
|
18344
|
-
this._prepareComponent(componentType);
|
|
18345
|
-
}
|
|
18346
|
-
}
|
|
18347
|
-
_prepareComponent(type) {
|
|
18348
|
-
var _a, _b;
|
|
18349
|
-
(_b = (_a = this.handlers)[type]) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
18350
|
-
}
|
|
18351
|
-
_prepareField() {
|
|
18352
|
-
const instance = this._componentRef.instance;
|
|
18353
|
-
instance.field = this.fieldConfig;
|
|
18354
|
-
instance.aggregations = this.aggregations;
|
|
18355
|
-
}
|
|
18356
|
-
}
|
|
18357
|
-
CustomFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
18358
|
-
CustomFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CustomFieldComponent, selector: "app-custom-field", inputs: { aggregations: "aggregations" }, host: { properties: { "class": "'custom-field' + ' custom-field__fieldConfig?.render?.type' " } }, providers: [
|
|
18359
|
-
{
|
|
18360
|
-
provide: NG_VALUE_ACCESSOR,
|
|
18361
|
-
useExisting: forwardRef(() => CustomFieldComponent),
|
|
18362
|
-
multi: true
|
|
18363
|
-
},
|
|
18364
|
-
{
|
|
18365
|
-
provide: NG_VALIDATORS,
|
|
18366
|
-
useExisting: forwardRef(() => CustomFieldComponent),
|
|
18367
|
-
multi: true
|
|
18368
|
-
}
|
|
18369
|
-
], usesInheritance: true, ngImport: i0, template: "<field-header *ngIf=\"fieldConfig.label && !fieldConfig.render?.options?.hideLabel\" class=\"predicate-field__label\">{{\r\n\tfieldConfig.label | translate\r\n}}</field-header>\r\n\r\n<ng-container #dynamicContainer></ng-container>\r\n", styles: [".custom-field{display:var(--cf-display, block);padding-inline:var(--cf-padding-inline, var(--ff-padding-inline, .5rem));padding-block:var(--cf-padding-block, var(--ff-padding-block, 0));max-width:100%}\n"], components: [{ type: FieldHeaderComponent, selector: "field-header" }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
18370
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomFieldComponent, decorators: [{
|
|
18371
|
-
type: Component,
|
|
18372
|
-
args: [{
|
|
18373
|
-
selector: 'app-custom-field',
|
|
18374
|
-
templateUrl: './custom-field.component.html',
|
|
18375
|
-
styleUrls: ['./custom-field.component.scss'],
|
|
18376
|
-
encapsulation: ViewEncapsulation.None,
|
|
18377
|
-
providers: [
|
|
18378
|
-
{
|
|
18379
|
-
provide: NG_VALUE_ACCESSOR,
|
|
18380
|
-
useExisting: forwardRef(() => CustomFieldComponent),
|
|
18381
|
-
multi: true
|
|
18382
|
-
},
|
|
18383
|
-
{
|
|
18384
|
-
provide: NG_VALIDATORS,
|
|
18385
|
-
useExisting: forwardRef(() => CustomFieldComponent),
|
|
18386
|
-
multi: true
|
|
18387
|
-
}
|
|
18388
|
-
],
|
|
18389
|
-
host: {
|
|
18390
|
-
'[class]': "'custom-field' + ' custom-field__fieldConfig?.render?.type' "
|
|
18391
|
-
}
|
|
18392
|
-
}]
|
|
18393
|
-
}], propDecorators: { aggregations: [{
|
|
18394
|
-
type: Input
|
|
18395
|
-
}] } });
|
|
18396
|
-
|
|
18397
|
-
class FiltersByRolesPipe {
|
|
18398
|
-
constructor(_nuxeoService, _rolesService) {
|
|
18399
|
-
this._nuxeoService = _nuxeoService;
|
|
18400
|
-
this._rolesService = _rolesService;
|
|
18401
|
-
}
|
|
18402
|
-
transform(items) {
|
|
18403
|
-
if (!items) {
|
|
18404
|
-
return items;
|
|
18405
|
-
}
|
|
18406
|
-
return items.filter((item) => {
|
|
18407
|
-
var _a, _b, _c, _d, _e;
|
|
18408
|
-
if (!Array.isArray((_a = item.config) === null || _a === void 0 ? void 0 : _a.roles) || ((_b = item.config) === null || _b === void 0 ? void 0 : _b.roles.length) === 0) {
|
|
18409
|
-
return true;
|
|
18410
|
-
}
|
|
18411
|
-
const user = (_d = (_c = this._nuxeoService) === null || _c === void 0 ? void 0 : _c.nuxeoClient) === null || _d === void 0 ? void 0 : _d.user;
|
|
18412
|
-
return this._rolesService.isUserInRole(user, (_e = item.config) === null || _e === void 0 ? void 0 : _e.roles);
|
|
18413
|
-
});
|
|
18414
|
-
}
|
|
18415
|
-
}
|
|
18416
|
-
FiltersByRolesPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FiltersByRolesPipe, deps: [{ token: NuxeoService }, { token: RolesService }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
18417
|
-
FiltersByRolesPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FiltersByRolesPipe, name: "filterByRoles" });
|
|
18418
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FiltersByRolesPipe, decorators: [{
|
|
18419
|
-
type: Pipe,
|
|
18420
|
-
args: [{
|
|
18421
|
-
name: 'filterByRoles'
|
|
18422
|
-
}]
|
|
18423
|
-
}], ctorParameters: function () { return [{ type: NuxeoService }, { type: RolesService }]; } });
|
|
18424
|
-
|
|
18425
18163
|
/**
|
|
18426
18164
|
* Creates a secure context for function evaluation that prevents access to the window object.
|
|
18427
18165
|
* @returns {Record<string, any>} A secure context object with safe properties.
|
|
@@ -18447,7 +18185,8 @@ function createSecureContext() {
|
|
|
18447
18185
|
// Prevent access to window
|
|
18448
18186
|
window: undefined,
|
|
18449
18187
|
self: undefined,
|
|
18450
|
-
globalThis: undefined
|
|
18188
|
+
globalThis: undefined,
|
|
18189
|
+
_: ___default // Include lodash if needed, but ensure it's used safely
|
|
18451
18190
|
};
|
|
18452
18191
|
}
|
|
18453
18192
|
/**
|
|
@@ -18737,37 +18476,301 @@ Evaluator.templateSettings = {
|
|
|
18737
18476
|
escape: /\{\{\{([\s\S]+?)\}\}\}/g
|
|
18738
18477
|
};
|
|
18739
18478
|
|
|
18740
|
-
class
|
|
18741
|
-
constructor(
|
|
18742
|
-
|
|
18743
|
-
this.
|
|
18479
|
+
class BaseField extends BaseCustomValueAccessor {
|
|
18480
|
+
constructor() {
|
|
18481
|
+
super(...arguments);
|
|
18482
|
+
this.dynamicComponent = this.injector.get(DynamicComponentLoaderService);
|
|
18744
18483
|
}
|
|
18745
|
-
|
|
18746
|
-
|
|
18747
|
-
|
|
18484
|
+
writeValue(obj) {
|
|
18485
|
+
var _a, _b, _c, _d;
|
|
18486
|
+
this.internalValue = obj;
|
|
18487
|
+
if ((_b = (_a = this._componentRef) === null || _a === void 0 ? void 0 : _a.instance) === null || _b === void 0 ? void 0 : _b.writeValue) {
|
|
18488
|
+
(_d = (_c = this._componentRef) === null || _c === void 0 ? void 0 : _c.instance) === null || _d === void 0 ? void 0 : _d.writeValue(obj);
|
|
18748
18489
|
}
|
|
18749
|
-
|
|
18750
|
-
|
|
18490
|
+
}
|
|
18491
|
+
validate(control) {
|
|
18492
|
+
var _a, _b;
|
|
18493
|
+
if ((_b = (_a = this._componentRef) === null || _a === void 0 ? void 0 : _a.instance) === null || _b === void 0 ? void 0 : _b.validate) {
|
|
18494
|
+
return this._componentRef.instance.validate(control);
|
|
18751
18495
|
}
|
|
18752
|
-
|
|
18753
|
-
|
|
18754
|
-
|
|
18496
|
+
else {
|
|
18497
|
+
return null;
|
|
18498
|
+
}
|
|
18499
|
+
}
|
|
18500
|
+
registerOnValidatorChange(fn) {
|
|
18501
|
+
var _a, _b;
|
|
18502
|
+
if ((_b = (_a = this._componentRef) === null || _a === void 0 ? void 0 : _a.instance) === null || _b === void 0 ? void 0 : _b.registerOnValidatorChange) {
|
|
18503
|
+
this._componentRef.instance.registerOnValidatorChange(fn);
|
|
18504
|
+
}
|
|
18505
|
+
}
|
|
18506
|
+
ngOnChanges(changes) {
|
|
18507
|
+
if (!this._componentRef) {
|
|
18508
|
+
return;
|
|
18509
|
+
}
|
|
18510
|
+
Object.keys(changes).forEach((key) => {
|
|
18511
|
+
this._componentRef.instance[key] = changes[key].currentValue;
|
|
18512
|
+
});
|
|
18513
|
+
this._componentRef.changeDetectorRef.markForCheck();
|
|
18514
|
+
}
|
|
18515
|
+
ngOnDestroy() {
|
|
18516
|
+
if (this._componentRef) {
|
|
18517
|
+
this._componentRef.destroy();
|
|
18755
18518
|
}
|
|
18756
18519
|
}
|
|
18520
|
+
_prepareValueAccessor() {
|
|
18521
|
+
const ngControl = this.injector.get(NgControl);
|
|
18522
|
+
ngControl.valueAccessor = this._componentRef.instance;
|
|
18523
|
+
}
|
|
18757
18524
|
}
|
|
18758
|
-
|
|
18759
|
-
|
|
18760
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type:
|
|
18525
|
+
BaseField.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseField, deps: null, target: i0.ɵɵFactoryTarget.Directive });
|
|
18526
|
+
BaseField.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: BaseField, inputs: { fieldConfig: "fieldConfig" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["dynamicContainer"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0 });
|
|
18527
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseField, decorators: [{
|
|
18528
|
+
type: Directive
|
|
18529
|
+
}], propDecorators: { container: [{
|
|
18530
|
+
type: ViewChild,
|
|
18531
|
+
args: ['dynamicContainer', { read: ViewContainerRef, static: true }]
|
|
18532
|
+
}], fieldConfig: [{
|
|
18533
|
+
type: Input
|
|
18534
|
+
}] } });
|
|
18535
|
+
|
|
18536
|
+
class PredicateFieldComponent extends BaseField {
|
|
18537
|
+
constructor() {
|
|
18538
|
+
super(...arguments);
|
|
18539
|
+
this.handlers = {
|
|
18540
|
+
input: this._prepareField.bind(this),
|
|
18541
|
+
date: this._prepareField.bind(this)
|
|
18542
|
+
};
|
|
18543
|
+
}
|
|
18544
|
+
ngOnInit() {
|
|
18545
|
+
var _a, _b;
|
|
18546
|
+
const componentType = (_b = (_a = this.fieldConfig) === null || _a === void 0 ? void 0 : _a.render) === null || _b === void 0 ? void 0 : _b.type;
|
|
18547
|
+
if (componentType) {
|
|
18548
|
+
this._componentRef = this.dynamicComponent.renderComponent(componentType, this.container);
|
|
18549
|
+
this._prepareValueAccessor();
|
|
18550
|
+
this._prepareComponent(componentType);
|
|
18551
|
+
}
|
|
18552
|
+
}
|
|
18553
|
+
_prepareComponent(type) {
|
|
18554
|
+
var _a, _b;
|
|
18555
|
+
(_b = (_a = this.handlers)[type]) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
18556
|
+
}
|
|
18557
|
+
_prepareField() {
|
|
18558
|
+
const instance = this._componentRef.instance;
|
|
18559
|
+
instance.field = this.fieldConfig;
|
|
18560
|
+
}
|
|
18561
|
+
}
|
|
18562
|
+
PredicateFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PredicateFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
18563
|
+
PredicateFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PredicateFieldComponent, selector: "app-predicate-field", host: { properties: { "class": "'predicate-field' + ' predicate-field__fieldConfig?.render?.type' " } }, providers: [
|
|
18564
|
+
{
|
|
18565
|
+
provide: NG_VALUE_ACCESSOR,
|
|
18566
|
+
useExisting: forwardRef(() => PredicateFieldComponent),
|
|
18567
|
+
multi: true
|
|
18568
|
+
},
|
|
18569
|
+
{
|
|
18570
|
+
provide: NG_VALIDATORS,
|
|
18571
|
+
useExisting: forwardRef(() => PredicateFieldComponent),
|
|
18572
|
+
multi: true
|
|
18573
|
+
}
|
|
18574
|
+
], usesInheritance: true, ngImport: i0, template: "<field-header *ngIf=\"fieldConfig.label && !fieldConfig.render?.options?.hideLabel\" class=\"predicate-field__label\">{{\r\n\tfieldConfig.label | translate\r\n}}</field-header>\r\n\r\n<ng-container #dynamicContainer></ng-container>\r\n", styles: [".predicate-field{display:var(--pf-display, block);padding-inline:var(--pf-padding-inline, var(--ff-padding-inline, .5rem));padding-block:var(--pf-padding-block, var(--ff-padding-block, 0));max-width:100%}\n"], components: [{ type: FieldHeaderComponent, selector: "field-header" }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
18575
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PredicateFieldComponent, decorators: [{
|
|
18576
|
+
type: Component,
|
|
18577
|
+
args: [{
|
|
18578
|
+
selector: 'app-predicate-field',
|
|
18579
|
+
templateUrl: './predicate-field.component.html',
|
|
18580
|
+
styleUrls: ['./predicate-field.component.scss'],
|
|
18581
|
+
encapsulation: ViewEncapsulation.None,
|
|
18582
|
+
providers: [
|
|
18583
|
+
{
|
|
18584
|
+
provide: NG_VALUE_ACCESSOR,
|
|
18585
|
+
useExisting: forwardRef(() => PredicateFieldComponent),
|
|
18586
|
+
multi: true
|
|
18587
|
+
},
|
|
18588
|
+
{
|
|
18589
|
+
provide: NG_VALIDATORS,
|
|
18590
|
+
useExisting: forwardRef(() => PredicateFieldComponent),
|
|
18591
|
+
multi: true
|
|
18592
|
+
}
|
|
18593
|
+
],
|
|
18594
|
+
host: {
|
|
18595
|
+
'[class]': "'predicate-field' + ' predicate-field__fieldConfig?.render?.type' "
|
|
18596
|
+
}
|
|
18597
|
+
}]
|
|
18598
|
+
}] });
|
|
18599
|
+
|
|
18600
|
+
class AggregationFieldComponent extends BaseField {
|
|
18601
|
+
constructor() {
|
|
18602
|
+
super(...arguments);
|
|
18603
|
+
this.handlers = {
|
|
18604
|
+
[AGGREGATION_FIELD_TYPES.dropdown]: this._prepareField.bind(this),
|
|
18605
|
+
[AGGREGATION_FIELD_TYPES.checkbox]: this._prepareField.bind(this),
|
|
18606
|
+
[AGGREGATION_FIELD_TYPES.radio]: this._prepareField.bind(this),
|
|
18607
|
+
[AGGREGATION_FIELD_TYPES.switch]: this._prepareField.bind(this),
|
|
18608
|
+
[AGGREGATION_FIELD_TYPES.autocomplete]: this._prepareField.bind(this),
|
|
18609
|
+
[AGGREGATION_FIELD_TYPES.dateList]: this._prepareField.bind(this),
|
|
18610
|
+
[AGGREGATION_FIELD_TYPES.custom]: this._prepareField.bind(this),
|
|
18611
|
+
};
|
|
18612
|
+
}
|
|
18613
|
+
ngOnInit() {
|
|
18614
|
+
var _a, _b, _c, _d;
|
|
18615
|
+
const componentType = (_b = (_a = this.fieldConfig) === null || _a === void 0 ? void 0 : _a.render) === null || _b === void 0 ? void 0 : _b.type;
|
|
18616
|
+
if (componentType) {
|
|
18617
|
+
this._componentRef = this.dynamicComponent.renderComponent(componentType, this.container);
|
|
18618
|
+
this._prepareValueAccessor();
|
|
18619
|
+
(_d = (_c = this.handlers)[componentType]) === null || _d === void 0 ? void 0 : _d.call(_c);
|
|
18620
|
+
}
|
|
18621
|
+
}
|
|
18622
|
+
_prepareField() {
|
|
18623
|
+
const instance = this._componentRef
|
|
18624
|
+
.instance;
|
|
18625
|
+
instance.aggregation = this.aggregation;
|
|
18626
|
+
instance.fieldConfig = this.fieldConfig;
|
|
18627
|
+
if (this.contentTemplate) {
|
|
18628
|
+
instance.contentTemplate = this.contentTemplate;
|
|
18629
|
+
}
|
|
18630
|
+
}
|
|
18631
|
+
}
|
|
18632
|
+
AggregationFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AggregationFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
18633
|
+
AggregationFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: AggregationFieldComponent, selector: "app-aggregation-field", inputs: { aggregation: "aggregation", contentTemplate: "contentTemplate" }, host: { properties: { "class": "'aggregation-field' + ' aggregation-field__fieldConfig?.render?.type' " } }, providers: [
|
|
18634
|
+
{
|
|
18635
|
+
provide: NG_VALUE_ACCESSOR,
|
|
18636
|
+
useExisting: forwardRef(() => AggregationFieldComponent),
|
|
18637
|
+
multi: true,
|
|
18638
|
+
},
|
|
18639
|
+
{
|
|
18640
|
+
provide: NG_VALIDATORS,
|
|
18641
|
+
useExisting: forwardRef(() => AggregationFieldComponent),
|
|
18642
|
+
multi: true,
|
|
18643
|
+
},
|
|
18644
|
+
], usesInheritance: true, ngImport: i0, template: '<ng-container #dynamicContainer></ng-container>', isInline: true, styles: [""], encapsulation: i0.ViewEncapsulation.None });
|
|
18645
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AggregationFieldComponent, decorators: [{
|
|
18646
|
+
type: Component,
|
|
18647
|
+
args: [{
|
|
18648
|
+
selector: 'app-aggregation-field',
|
|
18649
|
+
template: '<ng-container #dynamicContainer></ng-container>',
|
|
18650
|
+
styles: [''],
|
|
18651
|
+
encapsulation: ViewEncapsulation.None,
|
|
18652
|
+
providers: [
|
|
18653
|
+
{
|
|
18654
|
+
provide: NG_VALUE_ACCESSOR,
|
|
18655
|
+
useExisting: forwardRef(() => AggregationFieldComponent),
|
|
18656
|
+
multi: true,
|
|
18657
|
+
},
|
|
18658
|
+
{
|
|
18659
|
+
provide: NG_VALIDATORS,
|
|
18660
|
+
useExisting: forwardRef(() => AggregationFieldComponent),
|
|
18661
|
+
multi: true,
|
|
18662
|
+
},
|
|
18663
|
+
],
|
|
18664
|
+
host: {
|
|
18665
|
+
'[class]': "'aggregation-field' + ' aggregation-field__fieldConfig?.render?.type' ",
|
|
18666
|
+
},
|
|
18667
|
+
}]
|
|
18668
|
+
}], propDecorators: { aggregation: [{
|
|
18669
|
+
type: Input
|
|
18670
|
+
}], contentTemplate: [{
|
|
18671
|
+
type: Input
|
|
18672
|
+
}] } });
|
|
18673
|
+
|
|
18674
|
+
class CustomFieldComponent extends BaseField {
|
|
18675
|
+
constructor() {
|
|
18676
|
+
super(...arguments);
|
|
18677
|
+
this.handlers = {
|
|
18678
|
+
activeUser: this._prepareField.bind(this),
|
|
18679
|
+
aggregationGroup: this._prepareField.bind(this)
|
|
18680
|
+
};
|
|
18681
|
+
}
|
|
18682
|
+
ngOnInit() {
|
|
18683
|
+
var _a, _b;
|
|
18684
|
+
const componentType = (_b = (_a = this.fieldConfig) === null || _a === void 0 ? void 0 : _a.render) === null || _b === void 0 ? void 0 : _b.type;
|
|
18685
|
+
if (componentType) {
|
|
18686
|
+
this._componentRef = this.dynamicComponent.renderComponent(componentType, this.container);
|
|
18687
|
+
this._prepareValueAccessor();
|
|
18688
|
+
this._prepareComponent(componentType);
|
|
18689
|
+
}
|
|
18690
|
+
}
|
|
18691
|
+
_prepareComponent(type) {
|
|
18692
|
+
var _a, _b;
|
|
18693
|
+
(_b = (_a = this.handlers)[type]) === null || _b === void 0 ? void 0 : _b.call(_a);
|
|
18694
|
+
}
|
|
18695
|
+
_prepareField() {
|
|
18696
|
+
const instance = this._componentRef.instance;
|
|
18697
|
+
instance.field = this.fieldConfig;
|
|
18698
|
+
instance.aggregations = this.aggregations;
|
|
18699
|
+
}
|
|
18700
|
+
}
|
|
18701
|
+
CustomFieldComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomFieldComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
18702
|
+
CustomFieldComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CustomFieldComponent, selector: "app-custom-field", inputs: { aggregations: "aggregations" }, host: { properties: { "class": "'custom-field' + ' custom-field__fieldConfig?.render?.type' " } }, providers: [
|
|
18703
|
+
{
|
|
18704
|
+
provide: NG_VALUE_ACCESSOR,
|
|
18705
|
+
useExisting: forwardRef(() => CustomFieldComponent),
|
|
18706
|
+
multi: true
|
|
18707
|
+
},
|
|
18708
|
+
{
|
|
18709
|
+
provide: NG_VALIDATORS,
|
|
18710
|
+
useExisting: forwardRef(() => CustomFieldComponent),
|
|
18711
|
+
multi: true
|
|
18712
|
+
}
|
|
18713
|
+
], usesInheritance: true, ngImport: i0, template: "<field-header *ngIf=\"fieldConfig.label && !fieldConfig.render?.options?.hideLabel\" class=\"predicate-field__label\">{{\r\n\tfieldConfig.label | translate\r\n}}</field-header>\r\n\r\n<ng-container #dynamicContainer></ng-container>\r\n", styles: [".custom-field{display:var(--cf-display, block);padding-inline:var(--cf-padding-inline, var(--ff-padding-inline, .5rem));padding-block:var(--cf-padding-block, var(--ff-padding-block, 0));max-width:100%}\n"], components: [{ type: FieldHeaderComponent, selector: "field-header" }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
18714
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomFieldComponent, decorators: [{
|
|
18715
|
+
type: Component,
|
|
18716
|
+
args: [{
|
|
18717
|
+
selector: 'app-custom-field',
|
|
18718
|
+
templateUrl: './custom-field.component.html',
|
|
18719
|
+
styleUrls: ['./custom-field.component.scss'],
|
|
18720
|
+
encapsulation: ViewEncapsulation.None,
|
|
18721
|
+
providers: [
|
|
18722
|
+
{
|
|
18723
|
+
provide: NG_VALUE_ACCESSOR,
|
|
18724
|
+
useExisting: forwardRef(() => CustomFieldComponent),
|
|
18725
|
+
multi: true
|
|
18726
|
+
},
|
|
18727
|
+
{
|
|
18728
|
+
provide: NG_VALIDATORS,
|
|
18729
|
+
useExisting: forwardRef(() => CustomFieldComponent),
|
|
18730
|
+
multi: true
|
|
18731
|
+
}
|
|
18732
|
+
],
|
|
18733
|
+
host: {
|
|
18734
|
+
'[class]': "'custom-field' + ' custom-field__fieldConfig?.render?.type' "
|
|
18735
|
+
}
|
|
18736
|
+
}]
|
|
18737
|
+
}], propDecorators: { aggregations: [{
|
|
18738
|
+
type: Input
|
|
18739
|
+
}] } });
|
|
18740
|
+
|
|
18741
|
+
class FiltersByRolesPipe {
|
|
18742
|
+
constructor(_nuxeoService, _rolesService) {
|
|
18743
|
+
this._nuxeoService = _nuxeoService;
|
|
18744
|
+
this._rolesService = _rolesService;
|
|
18745
|
+
}
|
|
18746
|
+
transform(items) {
|
|
18747
|
+
if (!items) {
|
|
18748
|
+
return items;
|
|
18749
|
+
}
|
|
18750
|
+
return items.filter((item) => {
|
|
18751
|
+
var _a, _b, _c, _d, _e;
|
|
18752
|
+
if (!Array.isArray((_a = item.config) === null || _a === void 0 ? void 0 : _a.roles) || ((_b = item.config) === null || _b === void 0 ? void 0 : _b.roles.length) === 0) {
|
|
18753
|
+
return true;
|
|
18754
|
+
}
|
|
18755
|
+
const user = (_d = (_c = this._nuxeoService) === null || _c === void 0 ? void 0 : _c.nuxeoClient) === null || _d === void 0 ? void 0 : _d.user;
|
|
18756
|
+
return this._rolesService.isUserInRole(user, (_e = item.config) === null || _e === void 0 ? void 0 : _e.roles);
|
|
18757
|
+
});
|
|
18758
|
+
}
|
|
18759
|
+
}
|
|
18760
|
+
FiltersByRolesPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FiltersByRolesPipe, deps: [{ token: NuxeoService }, { token: RolesService }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
18761
|
+
FiltersByRolesPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FiltersByRolesPipe, name: "filterByRoles" });
|
|
18762
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FiltersByRolesPipe, decorators: [{
|
|
18761
18763
|
type: Pipe,
|
|
18762
18764
|
args: [{
|
|
18763
|
-
name: '
|
|
18765
|
+
name: 'filterByRoles'
|
|
18764
18766
|
}]
|
|
18765
|
-
}], ctorParameters: function () { return [{ type: NuxeoService }]; } });
|
|
18767
|
+
}], ctorParameters: function () { return [{ type: NuxeoService }, { type: RolesService }]; } });
|
|
18766
18768
|
|
|
18767
18769
|
class FiltersPanelComponent extends BaseFiltersPanel {
|
|
18768
|
-
constructor(_translateService) {
|
|
18770
|
+
constructor(_translateService, nuxeoService) {
|
|
18769
18771
|
super();
|
|
18770
18772
|
this._translateService = _translateService;
|
|
18773
|
+
this.nuxeoService = nuxeoService;
|
|
18771
18774
|
this.currentLang = this._translateService.currentLang;
|
|
18772
18775
|
this.direction$ = this._translateService.onLangChange.pipe(startWith({ lang: this._translateService.currentLang }), map((lang) => {
|
|
18773
18776
|
this.currentLang = lang.lang;
|
|
@@ -18778,6 +18781,7 @@ class FiltersPanelComponent extends BaseFiltersPanel {
|
|
|
18778
18781
|
this.filterChanged = new EventEmitter();
|
|
18779
18782
|
this.fieldTypes = FIELD_TYPE;
|
|
18780
18783
|
this.FieldRenderType = AGGREGATION_FIELD_TYPES;
|
|
18784
|
+
this.visibleFields = {};
|
|
18781
18785
|
this.formGroup = new FormGroup({});
|
|
18782
18786
|
}
|
|
18783
18787
|
set fields(vals) {
|
|
@@ -18791,6 +18795,9 @@ class FiltersPanelComponent extends BaseFiltersPanel {
|
|
|
18791
18795
|
}
|
|
18792
18796
|
set activeQuery(obj) {
|
|
18793
18797
|
this._activeQuerySub.next(obj);
|
|
18798
|
+
if (obj) {
|
|
18799
|
+
this._evaluateConditions();
|
|
18800
|
+
}
|
|
18794
18801
|
}
|
|
18795
18802
|
trackByFieldKey(_, field) {
|
|
18796
18803
|
var _a;
|
|
@@ -18803,6 +18810,13 @@ class FiltersPanelComponent extends BaseFiltersPanel {
|
|
|
18803
18810
|
ngOnInit() {
|
|
18804
18811
|
this._handleFormGroupChanges();
|
|
18805
18812
|
this._handelActiveQueryChange();
|
|
18813
|
+
this._evaluateConditions();
|
|
18814
|
+
}
|
|
18815
|
+
ngOnChanges(changes) {
|
|
18816
|
+
var _a, _b;
|
|
18817
|
+
if (!((_a = changes === null || changes === void 0 ? void 0 : changes.fields) === null || _a === void 0 ? void 0 : _a.firstChange) || !((_b = changes === null || changes === void 0 ? void 0 : changes.aggregations) === null || _b === void 0 ? void 0 : _b.firstChange)) {
|
|
18818
|
+
this._evaluateConditions();
|
|
18819
|
+
}
|
|
18806
18820
|
}
|
|
18807
18821
|
resetFilters() {
|
|
18808
18822
|
this.formGroup.reset({});
|
|
@@ -18812,6 +18826,7 @@ class FiltersPanelComponent extends BaseFiltersPanel {
|
|
|
18812
18826
|
return items.sort(({ config: { order: o1 } }, { config: { order: o2 } }) => (o1 !== null && o1 !== void 0 ? o1 : _defaultOrder) - (o2 !== null && o2 !== void 0 ? o2 : _defaultOrder));
|
|
18813
18827
|
}
|
|
18814
18828
|
_initFormGroup() {
|
|
18829
|
+
this.visibleFields = {};
|
|
18815
18830
|
this._removeControls();
|
|
18816
18831
|
this._prepareFiltersForm();
|
|
18817
18832
|
}
|
|
@@ -18835,7 +18850,10 @@ class FiltersPanelComponent extends BaseFiltersPanel {
|
|
|
18835
18850
|
}
|
|
18836
18851
|
_handleFormGroupChanges() {
|
|
18837
18852
|
this.formGroup.valueChanges
|
|
18838
|
-
.pipe(debounceTime(300), map((
|
|
18853
|
+
.pipe(debounceTime(300), map((formValue) => {
|
|
18854
|
+
const data = this._evaluateConditions(formValue);
|
|
18855
|
+
return removeEmptyKeys(data);
|
|
18856
|
+
}), distinctUntilChanged((a, b) => ___default.isEqual(a, b)), takeUntil(this.destroy$))
|
|
18839
18857
|
.subscribe((res) => {
|
|
18840
18858
|
this.filterChanged.emit(res);
|
|
18841
18859
|
});
|
|
@@ -18852,9 +18870,38 @@ class FiltersPanelComponent extends BaseFiltersPanel {
|
|
|
18852
18870
|
this._patchActiveQuery(res);
|
|
18853
18871
|
});
|
|
18854
18872
|
}
|
|
18873
|
+
_evaluateConditions(values = this.formGroup.getRawValue()) {
|
|
18874
|
+
this.visibleFields = {};
|
|
18875
|
+
this.fields.forEach((field) => {
|
|
18876
|
+
var _a;
|
|
18877
|
+
const fieldKey = field.config.fieldKey;
|
|
18878
|
+
const condition = (_a = field.config) === null || _a === void 0 ? void 0 : _a.condition;
|
|
18879
|
+
try {
|
|
18880
|
+
const isVisible = !condition ||
|
|
18881
|
+
Evaluator.evaluate(condition, ___default.cloneDeep({
|
|
18882
|
+
aggregations: this.aggregations,
|
|
18883
|
+
language: this.currentLang,
|
|
18884
|
+
user: this.nuxeoService.nuxeoClient.user,
|
|
18885
|
+
values: this.formGroup.getRawValue()
|
|
18886
|
+
}));
|
|
18887
|
+
this.visibleFields[fieldKey] = isVisible;
|
|
18888
|
+
if (!isVisible) {
|
|
18889
|
+
const control = this.formGroup.get(fieldKey);
|
|
18890
|
+
if (!!(control === null || control === void 0 ? void 0 : control.value)) {
|
|
18891
|
+
control.reset();
|
|
18892
|
+
control.updateValueAndValidity({ emitEvent: false });
|
|
18893
|
+
}
|
|
18894
|
+
}
|
|
18895
|
+
}
|
|
18896
|
+
catch (e) {
|
|
18897
|
+
console.error(`Error evaluating condition for field ${field.config.fieldKey}:`, e);
|
|
18898
|
+
}
|
|
18899
|
+
});
|
|
18900
|
+
return this.formGroup.value;
|
|
18901
|
+
}
|
|
18855
18902
|
}
|
|
18856
|
-
FiltersPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FiltersPanelComponent, deps: [{ token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
18857
|
-
FiltersPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: FiltersPanelComponent, selector: "app-filters-panel", inputs: { aggregations: "aggregations", fields: "fields", activeQuery: "activeQuery" }, outputs: { filterChanged: "filterChanged" }, usesInheritance: true, ngImport: i0, template: "<div [formGroup]=\"formGroup\" class=\"filters-panel\" [dir]=\"direction$ | async\">\r\n\t<div class=\"reset-filter flex reset-container\">\r\n\t\t<button mat-stroked-button class=\"w-full\" (click)=\"resetFilters()\" [disabled]=\"!hasValues\">\r\n\t\t\t{{ 'BUTTONS.clearFilter' | translate }}\r\n\t\t</button>\r\n\t</div>\r\n\t<ng-container *ngFor=\"let field of fields | filterByRoles; trackBy: trackByFieldKey\">\r\n\t\t<ng-container *permission=\"{ name: field.config?.permission }\">\r\n\t\t\t<ng-container *ngIf=\"field.config
|
|
18903
|
+
FiltersPanelComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FiltersPanelComponent, deps: [{ token: i1.TranslateService }, { token: NuxeoService }], target: i0.ɵɵFactoryTarget.Component });
|
|
18904
|
+
FiltersPanelComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: FiltersPanelComponent, selector: "app-filters-panel", inputs: { aggregations: "aggregations", fields: "fields", activeQuery: "activeQuery" }, outputs: { filterChanged: "filterChanged" }, usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<div [formGroup]=\"formGroup\" class=\"filters-panel\" [dir]=\"direction$ | async\">\r\n\t<div class=\"reset-filter flex reset-container\">\r\n\t\t<button mat-stroked-button class=\"w-full\" (click)=\"resetFilters()\" [disabled]=\"!hasValues\">\r\n\t\t\t{{ 'BUTTONS.clearFilter' | translate }}\r\n\t\t</button>\r\n\t</div>\r\n\t<ng-container *ngFor=\"let field of fields | filterByRoles; trackBy: trackByFieldKey\">\r\n\t\t<ng-container *permission=\"{ name: field.config?.permission }\">\r\n\t\t\t<ng-container *ngIf=\"visibleFields[field.config.fieldKey]\">\r\n\t\t\t\t<app-predicate-field\r\n\t\t\t\t\t*ngIf=\"field.type == fieldTypes.predicate\"\r\n\t\t\t\t\t[fieldConfig]=\"field.config\"\r\n\t\t\t\t\t[formControlName]=\"field.config.fieldKey\"\r\n\t\t\t\t></app-predicate-field>\r\n\t\t\t\t<app-aggregation-field\r\n\t\t\t\t\t*ngIf=\"field.type == fieldTypes.aggregation && !!aggregations\"\r\n\t\t\t\t\t[formControlName]=\"field.config.fieldKey\"\r\n\t\t\t\t\t[fieldConfig]=\"field.config\"\r\n\t\t\t\t\t[aggregation]=\"aggregations[field.config.aggregation]\"\r\n\t\t\t\t\t[contentTemplate]=\"getContentTemplate(field.config.render.type)\"\r\n\t\t\t\t></app-aggregation-field>\r\n\t\t\t\t<app-custom-field\r\n\t\t\t\t\t*ngIf=\"field.type == fieldTypes.custom\"\r\n\t\t\t\t\t[fieldConfig]=\"field.config\"\r\n\t\t\t\t\t[formControlName]=\"field.config.fieldKey\"\r\n\t\t\t\t\t[aggregations]=\"aggregations\"\r\n\t\t\t\t></app-custom-field>\r\n\t\t\t</ng-container>\r\n\t\t</ng-container>\r\n\t</ng-container>\r\n</div>\r\n", styles: [".filters-panel{display:var(--filters-panel-display, flex);flex-direction:var(--filters-panel-direction, column);grid-gap:var(--filters-panel-gap, .5rem);gap:var(--filters-panel-gap, .5rem);flex-wrap:var(--filters-panel-wrap, wrap);max-width:100%;box-sizing:border-box}.aggregation-field{padding-inline:var(--af-padding-inline, var(--ff-padding-inline, .5rem));padding-block:var(--af-padding-block, var(--ff-padding-block, 0));max-width:100%}.reset-container{padding:.5rem;position:sticky;top:-8px;z-index:4;background:var(--reset-filter-panel-bg, #fff)}.reset-container button.mat-button-base{background-color:var(--reset-filter-panel-btn-bg, transparent);border-color:var(--reset-filter-panel-btn-bg, #e2e8f0);color:var(--reset-filter-panel-btn-color, currentColor)}\n"], components: [{ type: i1$c.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: PredicateFieldComponent, selector: "app-predicate-field" }, { type: AggregationFieldComponent, selector: "app-aggregation-field", inputs: ["aggregation", "contentTemplate"] }, { type: CustomFieldComponent, selector: "app-custom-field", inputs: ["aggregations"] }], directives: [{ type: i2$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i4.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: PermissionsDirective, selector: "[permission]", inputs: ["permission"] }, { type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$4.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "async": i4$1.AsyncPipe, "translate": i1.TranslatePipe, "filterByRoles": FiltersByRolesPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
18858
18905
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FiltersPanelComponent, decorators: [{
|
|
18859
18906
|
type: Component,
|
|
18860
18907
|
args: [{
|
|
@@ -18863,7 +18910,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
18863
18910
|
styleUrls: ['./filters-panel.component.scss'],
|
|
18864
18911
|
changeDetection: ChangeDetectionStrategy.OnPush
|
|
18865
18912
|
}]
|
|
18866
|
-
}], ctorParameters: function () { return [{ type: i1.TranslateService }]; }, propDecorators: { aggregations: [{
|
|
18913
|
+
}], ctorParameters: function () { return [{ type: i1.TranslateService }, { type: NuxeoService }]; }, propDecorators: { aggregations: [{
|
|
18867
18914
|
type: Input
|
|
18868
18915
|
}], fields: [{
|
|
18869
18916
|
type: Input
|
|
@@ -18951,6 +18998,33 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
18951
18998
|
}]
|
|
18952
18999
|
}] });
|
|
18953
19000
|
|
|
19001
|
+
class CheckConditionPipe {
|
|
19002
|
+
constructor(nuxeoService) {
|
|
19003
|
+
this.nuxeoService = nuxeoService;
|
|
19004
|
+
this.user = nuxeoService.nuxeoClient.user;
|
|
19005
|
+
}
|
|
19006
|
+
transform(condition, aggregations, language, filterValues) {
|
|
19007
|
+
if (!condition) {
|
|
19008
|
+
return true;
|
|
19009
|
+
}
|
|
19010
|
+
try {
|
|
19011
|
+
return Evaluator.evaluate(condition, ___default.cloneDeep({ aggregations, language, user: this.user, values: filterValues }));
|
|
19012
|
+
}
|
|
19013
|
+
catch (error) {
|
|
19014
|
+
console.error({ error });
|
|
19015
|
+
return false;
|
|
19016
|
+
}
|
|
19017
|
+
}
|
|
19018
|
+
}
|
|
19019
|
+
CheckConditionPipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CheckConditionPipe, deps: [{ token: NuxeoService }], target: i0.ɵɵFactoryTarget.Pipe });
|
|
19020
|
+
CheckConditionPipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CheckConditionPipe, name: "checkCondition" });
|
|
19021
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CheckConditionPipe, decorators: [{
|
|
19022
|
+
type: Pipe,
|
|
19023
|
+
args: [{
|
|
19024
|
+
name: 'checkCondition'
|
|
19025
|
+
}]
|
|
19026
|
+
}], ctorParameters: function () { return [{ type: NuxeoService }]; } });
|
|
19027
|
+
|
|
18954
19028
|
class AggregationGroupComponent extends BaseCustomField {
|
|
18955
19029
|
constructor() {
|
|
18956
19030
|
super(...arguments);
|
|
@@ -21989,8 +22063,8 @@ class AttachmentsListComponent {
|
|
|
21989
22063
|
// isObject: new FormControl(false),
|
|
21990
22064
|
extension: new FormControl(item.title.split('.').pop()),
|
|
21991
22065
|
content: new FormControl({
|
|
21992
|
-
'upload-batch': item.blob['upload-batch'],
|
|
21993
|
-
'upload-fileId': item.blob['upload-fileId'],
|
|
22066
|
+
'upload-batch': item.blob ? item.blob['upload-batch'] : item.batchId,
|
|
22067
|
+
'upload-fileId': item.blob ? item.blob['upload-fileId'] : item.fileIdx,
|
|
21994
22068
|
'mime-type': 'application/pdf',
|
|
21995
22069
|
}),
|
|
21996
22070
|
});
|
|
@@ -22013,7 +22087,7 @@ class AttachmentsListComponent {
|
|
|
22013
22087
|
}
|
|
22014
22088
|
}
|
|
22015
22089
|
AttachmentsListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AttachmentsListComponent, deps: [{ token: NuxeoService }], target: i0.ɵɵFactoryTarget.Component });
|
|
22016
|
-
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: ["onlyIds", "bindValue", "bindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "vocabularyType", "label", "cacheable", "shwoAllValues"], outputs: ["onSelecting"] }, { type: i3$1.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i2$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i2$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2$4.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$4.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { type: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$4.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "translate": i1.TranslatePipe } });
|
|
22090
|
+
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: ["onlyIds", "bindValue", "bindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "vocabularyType", "label", "cacheable", "shwoAllValues", "emitVocabulryRecordOnSelect"], outputs: ["onSelecting"] }, { type: i3$1.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i2$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i2$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2$4.FormArrayName, selector: "[formArrayName]", inputs: ["formArrayName"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$4.FormGroupName, selector: "[formGroupName]", inputs: ["formGroupName"] }, { type: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$4.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "translate": i1.TranslatePipe } });
|
|
22017
22091
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AttachmentsListComponent, decorators: [{
|
|
22018
22092
|
type: Component,
|
|
22019
22093
|
args: [{
|
|
@@ -23385,6 +23459,7 @@ class DocumentUploadComponent {
|
|
|
23385
23459
|
/** Max allowed number of files size */
|
|
23386
23460
|
this.allowedMaxNumberOfFiles = 10;
|
|
23387
23461
|
this.showAllowedTypesInErrorMess = true;
|
|
23462
|
+
this.extraHeaders = {};
|
|
23388
23463
|
/** Event emitted on document upload success, it will have document or batch object based on configuration */
|
|
23389
23464
|
this.uploadSuccess = new EventEmitter();
|
|
23390
23465
|
/** Event emitted when an error occurs while attempting upload */
|
|
@@ -23486,7 +23561,7 @@ class DocumentUploadComponent {
|
|
|
23486
23561
|
uploadFiles(selectedFiles) {
|
|
23487
23562
|
if (selectedFiles.length) {
|
|
23488
23563
|
this.uploading = true;
|
|
23489
|
-
this.documentsApi.uploadBatch(selectedFiles)
|
|
23564
|
+
this.documentsApi.uploadBatch(selectedFiles, this.extraHeaders)
|
|
23490
23565
|
.subscribe((files) => {
|
|
23491
23566
|
if (this.createDocument) {
|
|
23492
23567
|
combineLatest([
|
|
@@ -23519,7 +23594,7 @@ class DocumentUploadComponent {
|
|
|
23519
23594
|
}
|
|
23520
23595
|
}
|
|
23521
23596
|
DocumentUploadComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DocumentUploadComponent, deps: [{ token: DocumentsService }, { token: CustomToastrService }], target: i0.ɵɵFactoryTarget.Component });
|
|
23522
|
-
DocumentUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DocumentUploadComponent, selector: "app-document-upload", inputs: { allowedTypes: "allowedTypes", params: "params", path: "path", maxSize: "maxSize", minSize: "minSize", docParams: "docParams", checkPdfContent: "checkPdfContent", multiple: "multiple", createDocument: "createDocument", allowedMaxNumberOfFiles: "allowedMaxNumberOfFiles", showAllowedTypesInErrorMess: "showAllowedTypesInErrorMess" }, outputs: { uploadSuccess: "uploadSuccess", uploadError: "uploadError" }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true }], ngImport: i0, template: "<input type=\"file\" class=\"hidden\" #fileInput [accept]=\"allowedTypes\" [multiple]=\"multiple\"\r\n (change)=\"uploadDocument($event.target.files)\">\r\n<div #template [ngClass]=\"{'hidden': template.childNodes.length == 0}\" (click)=\"triggerUpload()\"\r\n class=\"upload-container\">\r\n <ng-content></ng-content>\r\n</div>\r\n<div *ngIf=\"template.childNodes.length == 0\" class=\"default-upload\" (click)=\"triggerUpload()\">\r\n <div class=\"upload-section\" style=\"color:#465573;\">\r\n <mat-icon class=\"upload-icon\">upload</mat-icon>\r\n <h3 class=\"upload-title\">\r\n {{'documents.uploadDocuments'| translate }}</h3>\r\n <p class=\"upload-desc\">\r\n {{'documents.maxSize'| translate }} {{maxSize | FileSize}}</p>\r\n </div>\r\n <div>\r\n <mat-icon class=\"m-2\" style=\"color:#465573;\">file_copy</mat-icon>\r\n </div>\r\n</div>\r\n<mat-progress-bar mode=\"indeterminate\" *ngIf=\"uploading\"></mat-progress-bar>\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}.upload-container{display:flex;flex:1;justify-content:space-between;cursor:pointer;width:100%;height:100%}.default-upload{display:flex;padding:8px 16px;flex:1;justify-content:space-between;background:#d8d8fc;cursor:pointer}.upload-section{display:flex;align-items:center;justify-content:center;justify-content:space-between}.upload-icon{margin:0 8px}.upload-title{font-size:16px;border-color:#465573;border-left:1px solid;padding-left:8px;margin:0}.rtl .upload-title{border-left:0px;border-right:1px solid;padding-left:0;padding-right:8px}.upload-desc{font-size:12px;padding-left:8px;opacity:.6;margin:0}.rtl .upload-desc{padding-left:0;padding-right:8px}\n"], components: [{ type: i2$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i4$3.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "mode", "value", "bufferValue"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }], directives: [{ type: i4$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i1.TranslatePipe, "FileSize": FileSizePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
23597
|
+
DocumentUploadComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DocumentUploadComponent, selector: "app-document-upload", inputs: { allowedTypes: "allowedTypes", params: "params", path: "path", maxSize: "maxSize", minSize: "minSize", docParams: "docParams", checkPdfContent: "checkPdfContent", multiple: "multiple", createDocument: "createDocument", allowedMaxNumberOfFiles: "allowedMaxNumberOfFiles", showAllowedTypesInErrorMess: "showAllowedTypesInErrorMess", extraHeaders: "extraHeaders" }, outputs: { uploadSuccess: "uploadSuccess", uploadError: "uploadError" }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true }], ngImport: i0, template: "<input type=\"file\" class=\"hidden\" #fileInput [accept]=\"allowedTypes\" [multiple]=\"multiple\"\r\n (change)=\"uploadDocument($event.target.files)\">\r\n<div #template [ngClass]=\"{'hidden': template.childNodes.length == 0}\" (click)=\"triggerUpload()\"\r\n class=\"upload-container\">\r\n <ng-content></ng-content>\r\n</div>\r\n<div *ngIf=\"template.childNodes.length == 0\" class=\"default-upload\" (click)=\"triggerUpload()\">\r\n <div class=\"upload-section\" style=\"color:#465573;\">\r\n <mat-icon class=\"upload-icon\">upload</mat-icon>\r\n <h3 class=\"upload-title\">\r\n {{'documents.uploadDocuments'| translate }}</h3>\r\n <p class=\"upload-desc\">\r\n {{'documents.maxSize'| translate }} {{maxSize | FileSize}}</p>\r\n </div>\r\n <div>\r\n <mat-icon class=\"m-2\" style=\"color:#465573;\">file_copy</mat-icon>\r\n </div>\r\n</div>\r\n<mat-progress-bar mode=\"indeterminate\" *ngIf=\"uploading\"></mat-progress-bar>\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}.upload-container{display:flex;flex:1;justify-content:space-between;cursor:pointer;width:100%;height:100%}.default-upload{display:flex;padding:8px 16px;flex:1;justify-content:space-between;background:#d8d8fc;cursor:pointer}.upload-section{display:flex;align-items:center;justify-content:center;justify-content:space-between}.upload-icon{margin:0 8px}.upload-title{font-size:16px;border-color:#465573;border-left:1px solid;padding-left:8px;margin:0}.rtl .upload-title{border-left:0px;border-right:1px solid;padding-left:0;padding-right:8px}.upload-desc{font-size:12px;padding-left:8px;opacity:.6;margin:0}.rtl .upload-desc{padding-left:0;padding-right:8px}\n"], components: [{ type: i2$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i4$3.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "mode", "value", "bufferValue"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }], directives: [{ type: i4$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i1.TranslatePipe, "FileSize": FileSizePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
23523
23598
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DocumentUploadComponent, decorators: [{
|
|
23524
23599
|
type: Component,
|
|
23525
23600
|
args: [{
|
|
@@ -23550,6 +23625,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
23550
23625
|
type: Input
|
|
23551
23626
|
}], showAllowedTypesInErrorMess: [{
|
|
23552
23627
|
type: Input
|
|
23628
|
+
}], extraHeaders: [{
|
|
23629
|
+
type: Input
|
|
23553
23630
|
}], uploadSuccess: [{
|
|
23554
23631
|
type: Output
|
|
23555
23632
|
}], uploadError: [{
|
|
@@ -23587,7 +23664,7 @@ class DocumentsComponent {
|
|
|
23587
23664
|
}
|
|
23588
23665
|
}
|
|
23589
23666
|
DocumentsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DocumentsComponent, deps: [{ token: CustomToastrService }], target: i0.ɵɵFactoryTarget.Component });
|
|
23590
|
-
DocumentsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DocumentsComponent, selector: "app-documents", inputs: { ancestorId: "ancestorId", quickFilters: "quickFilters", params: "params", provider: "provider", path: "path", canUploadRoles: "canUploadRoles", multiple: "multiple", maxSize: "maxSize" }, ngImport: i0, template: "<app-card>\r\n <h3 class=\"title text-lg font-bold\">\r\n {{ \"documents.title\" | translate }}\r\n </h3>\r\n\r\n\r\n <div class=\"body\">\r\n <app-document-upload [multiple]=\"multiple\" *appHasRole=\"canUploadRoles\" [docParams]=\"{type:documentConstants.documentTypes.attachment}\"\r\n [path]=\"this.path\" [params]=\"this.params\" (uploadSuccess)=\"onSuccess($event)\" (uploadError)=\"onError($event)\">\r\n </app-document-upload>\r\n <app-documents-list [quickFilters]=\"quickFilters\" [notifier]=\"notifier\" [ancestorId]=\"ancestorId\"\r\n [provider]=\"provider\" (deleteSuccess)=\"onDelete($event)\">\r\n </app-documents-list>\r\n\r\n </div>\r\n</app-card>\r\n", styles: [""], components: [{ type: CardComponent, selector: "app-card", inputs: ["noBody", "dark"] }, { type: DocumentUploadComponent, selector: "app-document-upload", inputs: ["allowedTypes", "params", "path", "maxSize", "minSize", "docParams", "checkPdfContent", "multiple", "createDocument", "allowedMaxNumberOfFiles", "showAllowedTypesInErrorMess"], outputs: ["uploadSuccess", "uploadError"] }, { type: DocumentsListComponent, selector: "app-documents-list", inputs: ["ancestorId", "provider", "disablePagination", "containerClasses", "itemsClasses", "items", "notifier", "canPreview", "batchList", "dontDelete", "canDelete", "quickFilters", "memoView"], outputs: ["deleteSuccess", "documentsCount", "documentSelect"] }], directives: [{ type: AppHasRoleDirective, selector: "[appHasRole]", inputs: ["appHasRole"] }], pipes: { "translate": i1.TranslatePipe } });
|
|
23667
|
+
DocumentsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DocumentsComponent, selector: "app-documents", inputs: { ancestorId: "ancestorId", quickFilters: "quickFilters", params: "params", provider: "provider", path: "path", canUploadRoles: "canUploadRoles", multiple: "multiple", maxSize: "maxSize" }, ngImport: i0, template: "<app-card>\r\n <h3 class=\"title text-lg font-bold\">\r\n {{ \"documents.title\" | translate }}\r\n </h3>\r\n\r\n\r\n <div class=\"body\">\r\n <app-document-upload [multiple]=\"multiple\" *appHasRole=\"canUploadRoles\" [docParams]=\"{type:documentConstants.documentTypes.attachment}\"\r\n [path]=\"this.path\" [params]=\"this.params\" (uploadSuccess)=\"onSuccess($event)\" (uploadError)=\"onError($event)\">\r\n </app-document-upload>\r\n <app-documents-list [quickFilters]=\"quickFilters\" [notifier]=\"notifier\" [ancestorId]=\"ancestorId\"\r\n [provider]=\"provider\" (deleteSuccess)=\"onDelete($event)\">\r\n </app-documents-list>\r\n\r\n </div>\r\n</app-card>\r\n", styles: [""], components: [{ type: CardComponent, selector: "app-card", inputs: ["noBody", "dark"] }, { type: DocumentUploadComponent, selector: "app-document-upload", inputs: ["allowedTypes", "params", "path", "maxSize", "minSize", "docParams", "checkPdfContent", "multiple", "createDocument", "allowedMaxNumberOfFiles", "showAllowedTypesInErrorMess", "extraHeaders"], outputs: ["uploadSuccess", "uploadError"] }, { type: DocumentsListComponent, selector: "app-documents-list", inputs: ["ancestorId", "provider", "disablePagination", "containerClasses", "itemsClasses", "items", "notifier", "canPreview", "batchList", "dontDelete", "canDelete", "quickFilters", "memoView"], outputs: ["deleteSuccess", "documentsCount", "documentSelect"] }], directives: [{ type: AppHasRoleDirective, selector: "[appHasRole]", inputs: ["appHasRole"] }], pipes: { "translate": i1.TranslatePipe } });
|
|
23591
23668
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DocumentsComponent, decorators: [{
|
|
23592
23669
|
type: Component,
|
|
23593
23670
|
args: [{
|
|
@@ -28015,7 +28092,7 @@ class DynamicFieldsRendererComponent {
|
|
|
28015
28092
|
}
|
|
28016
28093
|
}
|
|
28017
28094
|
DynamicFieldsRendererComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicFieldsRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
28018
|
-
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", orgNameFilter: "orgNameFilter", ngoNameFilter: "ngoNameFilter", disableInitSecrecyLevel: "disableInitSecrecyLevel", mode: "mode", fields: "fields" }, outputs: { checkTextSpellCheckerField: "checkTextSpellCheckerField" }, ngImport: i0, template: "<div [formGroup]=\"form\" *ngIf=\"form\">\r\n\t<div class=\"renderer-container\">\r\n\t\t<div class=\"field-container\" *ngFor=\"let field of fields\">\r\n\t\t\t<div class=\"flex gap-x-2 items-center\" *permission=\"{ name: field.permission, entity: field.formControlName }\">\r\n\t\t\t\t<div class=\"single-field mb-3\" *ngIf=\"field.type === 'text'\">\r\n\t\t\t\t\t<ng-container *ngIf=\"field.customLabel; else showLabel\">\r\n\t\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t\t\t\tcustomlabel;\r\n\t\t\t\t\t\t\t\tcontext: {\r\n\t\t\t\t\t\t\t\t\tlabel: field.customLabel,\r\n\t\t\t\t\t\t\t\t\ttemplate: field.customLabelTemplate,\r\n\t\t\t\t\t\t\t\t\tcontrolName: field.formControlName\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t></ng-container>\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t<ng-template #showLabel>\r\n\t\t\t\t\t\t<div class=\"label-style\">\r\n\t\t\t\t\t\t\t{{ field.label | translate }}\r\n\t\t\t\t\t\t\t<span class=\"text-red-500\" *ngIf=\"field.required\">*</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<input\r\n\t\t\t\t\t\tclass=\"field-style\"\r\n\t\t\t\t\t\tid=\"{{ field.formControlName }}\"\r\n\t\t\t\t\t\t[formControlName]=\"field.formControlName\"\r\n\t\t\t\t\t\tplaceholder=\" {{ field.placeholder | translate }}\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"single-field mb-3\" *ngIf=\"field.type === 'number'\">\r\n\t\t\t\t\t<ng-container *ngIf=\"field.customLabel; else showLabel\">\r\n\t\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t\t\t\tcustomlabel;\r\n\t\t\t\t\t\t\t\tcontext: {\r\n\t\t\t\t\t\t\t\t\tlabel: field.customLabel,\r\n\t\t\t\t\t\t\t\t\ttemplate: field.customLabelTemplate,\r\n\t\t\t\t\t\t\t\t\tcontrolName: field.formControlName\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t></ng-container>\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t<ng-template #showLabel>\r\n\t\t\t\t\t\t<div class=\"label-style\">\r\n\t\t\t\t\t\t\t{{ field.label | translate }}\r\n\t\t\t\t\t\t\t<span class=\"text-red-500\" *ngIf=\"field.required\">*</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</ng-template>\r\n\r\n\t\t\t\t\t<input\r\n\t\t\t\t\t\tmin=\"1\"\r\n\t\t\t\t\t\ttype=\"number\"\r\n\t\t\t\t\t\tclass=\"field-style\"\r\n\t\t\t\t\t\t[formControlName]=\"field.formControlName\"\r\n\t\t\t\t\t\tplaceholder=\" {{ field.placeholder | translate }}\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"single-field mb-3\" *ngIf=\"field.type === 'textarea'\">\r\n\t\t\t\t\t<ng-container *ngIf=\"field.customLabel\">\r\n\t\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t\t\t\tcustomlabel;\r\n\t\t\t\t\t\t\t\tcontext: {\r\n\t\t\t\t\t\t\t\t\tlabel: field.customLabel,\r\n\t\t\t\t\t\t\t\t\ttemplate: field.customLabelTemplate,\r\n\t\t\t\t\t\t\t\t\tcontrolName: field.formControlName\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t></ng-container>\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t<app-dynamic-form-textarea\r\n\t\t\t\t\t\t[id]=\"field.formControlName\"\r\n\t\t\t\t\t\t[label]=\"field.label\"\r\n\t\t\t\t\t\tplaceholder=\"{{ field.placeholder | translate }}\"\r\n\t\t\t\t\t\t[disabled]=\"field.disabled\"\r\n\t\t\t\t\t\t[formControlName]=\"field.formControlName\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t</app-dynamic-form-textarea>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"single-field mb-3\" *ngIf=\"field.type === 'date'\">\r\n\t\t\t\t\t<ng-container *ngIf=\"field.customLabel\">\r\n\t\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t\t\t\tcustomlabel;\r\n\t\t\t\t\t\t\t\tcontext: {\r\n\t\t\t\t\t\t\t\t\tlabel: field.customLabel,\r\n\t\t\t\t\t\t\t\t\ttemplate: field.customLabelTemplate,\r\n\t\t\t\t\t\t\t\t\tcontrolName: field.formControlName\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t></ng-container>\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t<cts-dynamic-form-hijri-dateitem\r\n\t\t\t\t\t\t[formControlName]=\"field.formControlName\"\r\n\t\t\t\t\t\t[label]=\"field.label\"\r\n\t\t\t\t\t\t[minHijri]=\"field.minHijri\"\r\n\t\t\t\t\t\t[maxHijri]=\"field.maxHijri\"\r\n\t\t\t\t\t\t[minGreg]=\"field.minGreg\"\r\n\t\t\t\t\t\t[maxGreg]=\"field.maxGreg\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t</cts-dynamic-form-hijri-dateitem>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"single-field mb-3\" *ngIf=\"field.type === 'spellCheckerField'\">\r\n\t\t\t\t\t<ng-container *ngIf=\"field.customLabel\">\r\n\t\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t\t\t\tcustomlabel;\r\n\t\t\t\t\t\t\t\tcontext: {\r\n\t\t\t\t\t\t\t\t\tlabel: field.customLabel,\r\n\t\t\t\t\t\t\t\t\ttemplate: field.customLabelTemplate,\r\n\t\t\t\t\t\t\t\t\tcontrolName: field.formControlName\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t></ng-container>\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t<ndf-spell-checker-text-field\r\n\t\t\t\t\t\t[id]=\"field.formControlName\"\r\n\t\t\t\t\t\t[formControlName]=\"field.formControlName\"\r\n\t\t\t\t\t\t[placeholder]=\"field.placeholder\"\r\n\t\t\t\t\t\t[fieldType]=\"field.fieldType\"\r\n\t\t\t\t\t\t[label]=\"field.label\"\r\n\t\t\t\t\t\t(checkFromText)=\"checkTextOfSpellCheckField(field.formControlName)\"\r\n\t\t\t\t\t></ndf-spell-checker-text-field>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"single-field mb-3\" *ngIf=\"field.type === 'dynamic-vocabulary'\">\r\n\t\t\t\t\t<ng-container *ngIf=\"field.customLabel\">\r\n\t\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t\t\t\tcustomlabel;\r\n\t\t\t\t\t\t\t\tcontext: {\r\n\t\t\t\t\t\t\t\t\tlabel: field.customLabel,\r\n\t\t\t\t\t\t\t\t\ttemplate: field.customLabelTemplate,\r\n\t\t\t\t\t\t\t\t\tcontrolName: field.formControlName\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t></ng-container>\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t<app-dynamic-form-vocabulary-item\r\n\t\t\t\t\t\t[label]=\"field.label\"\r\n\t\t\t\t\t\t[bindLabel]=\"field.bindLabel\"\r\n\t\t\t\t\t\t[bindValue]=\"field.bindValue\"\r\n\t\t\t\t\t\tplaceholder=\"{{ field.placeholder | translate }}\"\r\n\t\t\t\t\t\t[multiple]=\"field.multiple\"\r\n\t\t\t\t\t\t[searchable]=\"field.searchable\"\r\n\t\t\t\t\t\t[closeOnSelect]=\"field.closeOnSelect\"\r\n\t\t\t\t\t\t[disabled]=\"field.disabled\"\r\n\t\t\t\t\t\t[hideSelectedItems]=\"field.hideSelectedItems\"\r\n\t\t\t\t\t\t[vocabularyType]=\"field.vocabularyType\"\r\n\t\t\t\t\t\t[onlyIds]=\"field.onlyIds\"\r\n\t\t\t\t\t\t[formControlName]=\"field.formControlName\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t</app-dynamic-form-vocabulary-item>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<!-- <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\t\t\t\t<div class=\"single-field mb-3\" *ngIf=\"field.type === 'translated-vocabulary'\">\r\n\t\t\t\t\t<ng-container *ngIf=\"field.customLabel\">\r\n\t\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t\t\t\tcustomlabel;\r\n\t\t\t\t\t\t\t\tcontext: {\r\n\t\t\t\t\t\t\t\t\tlabel: field.customLabel,\r\n\t\t\t\t\t\t\t\t\ttemplate: field.customLabelTemplate,\r\n\t\t\t\t\t\t\t\t\tcontrolName: field.formControlName\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t></ng-container>\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t<app-translated-vocabulary-select\r\n\t\t\t\t\t\t[label]=\"field.label\"\r\n\t\t\t\t\t\t[arbBindLabel]=\"field.arbBindLabel\"\r\n\t\t\t\t\t\t[engBindLabel]=\"field.engBindLabel\"\r\n\t\t\t\t\t\t[bindValue]=\"field.bindValue\"\r\n\t\t\t\t\t\tplaceholder=\"{{ field.placeholder | translate }}\"\r\n\t\t\t\t\t\t[multiple]=\"field.multiple\"\r\n\t\t\t\t\t\t[searchable]=\"field.searchable\"\r\n\t\t\t\t\t\t[closeOnSelect]=\"field.closeOnSelect\"\r\n\t\t\t\t\t\t[hideSelectedItems]=\"field.hideSelectedItems\"\r\n\t\t\t\t\t\t[formControlName]=\"field.formControlName\"\r\n\t\t\t\t\t\t[vocbularyId]=\"field.vocbularyId\"\r\n\t\t\t\t\t\t[useFilter]=\"field.useFilter\"\r\n\t\t\t\t\t\t[filter]=\"\r\n\t\t\t\t\t\t\tfield.filter === 'agencyName'\r\n\t\t\t\t\t\t\t\t? agencyNameFilter\r\n\t\t\t\t\t\t\t\t: field.filter === 'countryName'\r\n\t\t\t\t\t\t\t\t? countryNameFilter\r\n\t\t\t\t\t\t\t\t: field.filter === 'orgName'\r\n\t\t\t\t\t\t\t\t? orgNameFilter\r\n\t\t\t\t\t\t\t\t: field.filter === 'ngoName'\r\n\t\t\t\t\t\t\t\t? ngoNameFilter\r\n\t\t\t\t\t\t\t\t: {}\r\n\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t[params]=\"field.params || {}\"\r\n\t\t\t\t\t\t[getByDirectorySuggestion]=\"field.getByDirectorySuggestion\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t</app-translated-vocabulary-select>\r\n\t\t\t\t</div>\r\n\t\t\t\t<ng-container *ngIf=\"field.selectable\">\r\n\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t\t\tfieldsCheckBox;\r\n\t\t\t\t\t\t\tcontext: {\r\n\t\t\t\t\t\t\t\tcheckBoxTemplate: field.template,\r\n\t\t\t\t\t\t\t\tcontrolName: field.formControlName\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\"\r\n\t\t\t\t\t></ng-container>\r\n\t\t\t\t</ng-container>\r\n\t\t\t</div>\r\n\r\n\t\t\t<!-- template in client -->\r\n\t\t\t<ng-container *ngIf=\"field.suggest\">\r\n\t\t\t\t<ng-container\r\n\t\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t\tsuggest;\r\n\t\t\t\t\t\tcontext: {\r\n\t\t\t\t\t\t\tfield: field.label,\r\n\t\t\t\t\t\t\tsuggestName: field.suggest,\r\n\t\t\t\t\t\t\tcontrolName: field.formControlName,\r\n\t\t\t\t\t\t\ttemplate: field.suggestTemplate\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\"\r\n\t\t\t\t></ng-container>\r\n\t\t\t</ng-container>\r\n\t\t</div>\r\n\t</div>\r\n</div>\r\n\r\n<ng-template #fieldsCheckBox let-checkBoxTemplate=\"checkBoxTemplate\" let-controlName=\"controlName\">\r\n\t<ng-container *ngTemplateOutlet=\"checkBoxTemplate; context: { controlName: controlName }\"> </ng-container>\r\n</ng-template>\r\n\r\n<!-- suggest -->\r\n<ng-template\r\n\t#suggest\r\n\tlet-field=\"field\"\r\n\tlet-suggestName=\"suggestName\"\r\n\tlet-controlName=\"controlName\"\r\n\tlet-template=\"template\"\r\n>\r\n\t<ng-container\r\n\t\t*ngTemplateOutlet=\"\r\n\t\t\ttemplate;\r\n\t\t\tcontext: {\r\n\t\t\t\tfield: field,\r\n\t\t\t\tsuggestName: suggestName,\r\n\t\t\t\tcontrolName: controlName\r\n\t\t\t}\r\n\t\t\"\r\n\t>\r\n\t</ng-container>\r\n</ng-template>\r\n<!-- suggest -->\r\n\r\n<!-- custom label -->\r\n<ng-template #customlabel let-controlName=\"controlName\" let-label=\"label\" let-template=\"template\">\r\n\t<ng-container\r\n\t\t*ngTemplateOutlet=\"\r\n\t\t\ttemplate;\r\n\t\t\tcontext: {\r\n\t\t\t\tlabel: label,\r\n\t\t\t\tcontrolName: controlName\r\n\t\t\t}\r\n\t\t\"\r\n\t>\r\n\t</ng-container>\r\n</ng-template>\r\n<!-- custom label -->\r\n", styles: [".single-field{width:100%}\n"], components: [{ type: DynamicFormTextareaComponent, selector: "app-dynamic-form-textarea", inputs: ["property", "label", "editable", "disabled", "id", "placeholder", "displayEmpty", "horizontalAlign"] }, { type: DynamicFormHijriDateitemComponent, selector: "cts-dynamic-form-hijri-dateitem", inputs: ["minHijri", "maxHijri", "minGreg", "maxGreg", "label", "isDisabled", "range", "vertical", "isReadOnly", "placeholder", "emitOnBlur"], outputs: ["valueChanged"] }, { type: SpellCheckerTextFieldComponent, selector: "ndf-spell-checker-text-field", inputs: ["id", "placeholder", "fieldType", "label"], outputs: ["checkFromText"] }, { type: DynamicFormVocabularyItemComponent, selector: "app-dynamic-form-vocabulary-item", inputs: ["onlyIds", "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: i2$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2$4.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: i4$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2$4.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: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$4.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i2$4.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { type: i2$4.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
28095
|
+
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", orgNameFilter: "orgNameFilter", ngoNameFilter: "ngoNameFilter", disableInitSecrecyLevel: "disableInitSecrecyLevel", mode: "mode", fields: "fields" }, outputs: { checkTextSpellCheckerField: "checkTextSpellCheckerField" }, ngImport: i0, template: "<div [formGroup]=\"form\" *ngIf=\"form\">\r\n\t<div class=\"renderer-container\">\r\n\t\t<div class=\"field-container\" *ngFor=\"let field of fields\">\r\n\t\t\t<div class=\"flex gap-x-2 items-center\" *permission=\"{ name: field.permission, entity: field.formControlName }\">\r\n\t\t\t\t<div class=\"single-field mb-3\" *ngIf=\"field.type === 'text'\">\r\n\t\t\t\t\t<ng-container *ngIf=\"field.customLabel; else showLabel\">\r\n\t\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t\t\t\tcustomlabel;\r\n\t\t\t\t\t\t\t\tcontext: {\r\n\t\t\t\t\t\t\t\t\tlabel: field.customLabel,\r\n\t\t\t\t\t\t\t\t\ttemplate: field.customLabelTemplate,\r\n\t\t\t\t\t\t\t\t\tcontrolName: field.formControlName\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t></ng-container>\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t<ng-template #showLabel>\r\n\t\t\t\t\t\t<div class=\"label-style\">\r\n\t\t\t\t\t\t\t{{ field.label | translate }}\r\n\t\t\t\t\t\t\t<span class=\"text-red-500\" *ngIf=\"field.required\">*</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</ng-template>\r\n\t\t\t\t\t<input\r\n\t\t\t\t\t\tclass=\"field-style\"\r\n\t\t\t\t\t\tid=\"{{ field.formControlName }}\"\r\n\t\t\t\t\t\t[formControlName]=\"field.formControlName\"\r\n\t\t\t\t\t\tplaceholder=\" {{ field.placeholder | translate }}\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"single-field mb-3\" *ngIf=\"field.type === 'number'\">\r\n\t\t\t\t\t<ng-container *ngIf=\"field.customLabel; else showLabel\">\r\n\t\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t\t\t\tcustomlabel;\r\n\t\t\t\t\t\t\t\tcontext: {\r\n\t\t\t\t\t\t\t\t\tlabel: field.customLabel,\r\n\t\t\t\t\t\t\t\t\ttemplate: field.customLabelTemplate,\r\n\t\t\t\t\t\t\t\t\tcontrolName: field.formControlName\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t></ng-container>\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t<ng-template #showLabel>\r\n\t\t\t\t\t\t<div class=\"label-style\">\r\n\t\t\t\t\t\t\t{{ field.label | translate }}\r\n\t\t\t\t\t\t\t<span class=\"text-red-500\" *ngIf=\"field.required\">*</span>\r\n\t\t\t\t\t\t</div>\r\n\t\t\t\t\t</ng-template>\r\n\r\n\t\t\t\t\t<input\r\n\t\t\t\t\t\tmin=\"1\"\r\n\t\t\t\t\t\ttype=\"number\"\r\n\t\t\t\t\t\tclass=\"field-style\"\r\n\t\t\t\t\t\t[formControlName]=\"field.formControlName\"\r\n\t\t\t\t\t\tplaceholder=\" {{ field.placeholder | translate }}\"\r\n\t\t\t\t\t/>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"single-field mb-3\" *ngIf=\"field.type === 'textarea'\">\r\n\t\t\t\t\t<ng-container *ngIf=\"field.customLabel\">\r\n\t\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t\t\t\tcustomlabel;\r\n\t\t\t\t\t\t\t\tcontext: {\r\n\t\t\t\t\t\t\t\t\tlabel: field.customLabel,\r\n\t\t\t\t\t\t\t\t\ttemplate: field.customLabelTemplate,\r\n\t\t\t\t\t\t\t\t\tcontrolName: field.formControlName\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t></ng-container>\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t<app-dynamic-form-textarea\r\n\t\t\t\t\t\t[id]=\"field.formControlName\"\r\n\t\t\t\t\t\t[label]=\"field.label\"\r\n\t\t\t\t\t\tplaceholder=\"{{ field.placeholder | translate }}\"\r\n\t\t\t\t\t\t[disabled]=\"field.disabled\"\r\n\t\t\t\t\t\t[formControlName]=\"field.formControlName\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t</app-dynamic-form-textarea>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"single-field mb-3\" *ngIf=\"field.type === 'date'\">\r\n\t\t\t\t\t<ng-container *ngIf=\"field.customLabel\">\r\n\t\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t\t\t\tcustomlabel;\r\n\t\t\t\t\t\t\t\tcontext: {\r\n\t\t\t\t\t\t\t\t\tlabel: field.customLabel,\r\n\t\t\t\t\t\t\t\t\ttemplate: field.customLabelTemplate,\r\n\t\t\t\t\t\t\t\t\tcontrolName: field.formControlName\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t></ng-container>\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t<cts-dynamic-form-hijri-dateitem\r\n\t\t\t\t\t\t[formControlName]=\"field.formControlName\"\r\n\t\t\t\t\t\t[label]=\"field.label\"\r\n\t\t\t\t\t\t[minHijri]=\"field.minHijri\"\r\n\t\t\t\t\t\t[maxHijri]=\"field.maxHijri\"\r\n\t\t\t\t\t\t[minGreg]=\"field.minGreg\"\r\n\t\t\t\t\t\t[maxGreg]=\"field.maxGreg\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t</cts-dynamic-form-hijri-dateitem>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"single-field mb-3\" *ngIf=\"field.type === 'spellCheckerField'\">\r\n\t\t\t\t\t<ng-container *ngIf=\"field.customLabel\">\r\n\t\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t\t\t\tcustomlabel;\r\n\t\t\t\t\t\t\t\tcontext: {\r\n\t\t\t\t\t\t\t\t\tlabel: field.customLabel,\r\n\t\t\t\t\t\t\t\t\ttemplate: field.customLabelTemplate,\r\n\t\t\t\t\t\t\t\t\tcontrolName: field.formControlName\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t></ng-container>\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t<ndf-spell-checker-text-field\r\n\t\t\t\t\t\t[id]=\"field.formControlName\"\r\n\t\t\t\t\t\t[formControlName]=\"field.formControlName\"\r\n\t\t\t\t\t\t[placeholder]=\"field.placeholder\"\r\n\t\t\t\t\t\t[fieldType]=\"field.fieldType\"\r\n\t\t\t\t\t\t[label]=\"field.label\"\r\n\t\t\t\t\t\t(checkFromText)=\"checkTextOfSpellCheckField(field.formControlName)\"\r\n\t\t\t\t\t></ndf-spell-checker-text-field>\r\n\t\t\t\t</div>\r\n\t\t\t\t<div class=\"single-field mb-3\" *ngIf=\"field.type === 'dynamic-vocabulary'\">\r\n\t\t\t\t\t<ng-container *ngIf=\"field.customLabel\">\r\n\t\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t\t\t\tcustomlabel;\r\n\t\t\t\t\t\t\t\tcontext: {\r\n\t\t\t\t\t\t\t\t\tlabel: field.customLabel,\r\n\t\t\t\t\t\t\t\t\ttemplate: field.customLabelTemplate,\r\n\t\t\t\t\t\t\t\t\tcontrolName: field.formControlName\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t></ng-container>\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t<app-dynamic-form-vocabulary-item\r\n\t\t\t\t\t\t[label]=\"field.label\"\r\n\t\t\t\t\t\t[bindLabel]=\"field.bindLabel\"\r\n\t\t\t\t\t\t[bindValue]=\"field.bindValue\"\r\n\t\t\t\t\t\tplaceholder=\"{{ field.placeholder | translate }}\"\r\n\t\t\t\t\t\t[multiple]=\"field.multiple\"\r\n\t\t\t\t\t\t[searchable]=\"field.searchable\"\r\n\t\t\t\t\t\t[closeOnSelect]=\"field.closeOnSelect\"\r\n\t\t\t\t\t\t[disabled]=\"field.disabled\"\r\n\t\t\t\t\t\t[hideSelectedItems]=\"field.hideSelectedItems\"\r\n\t\t\t\t\t\t[vocabularyType]=\"field.vocabularyType\"\r\n\t\t\t\t\t\t[onlyIds]=\"field.onlyIds\"\r\n\t\t\t\t\t\t[formControlName]=\"field.formControlName\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t</app-dynamic-form-vocabulary-item>\r\n\t\t\t\t</div>\r\n\r\n\t\t\t\t<!-- <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\t\t\t\t<div class=\"single-field mb-3\" *ngIf=\"field.type === 'translated-vocabulary'\">\r\n\t\t\t\t\t<ng-container *ngIf=\"field.customLabel\">\r\n\t\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t\t\t\tcustomlabel;\r\n\t\t\t\t\t\t\t\tcontext: {\r\n\t\t\t\t\t\t\t\t\tlabel: field.customLabel,\r\n\t\t\t\t\t\t\t\t\ttemplate: field.customLabelTemplate,\r\n\t\t\t\t\t\t\t\t\tcontrolName: field.formControlName\r\n\t\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t></ng-container>\r\n\t\t\t\t\t</ng-container>\r\n\t\t\t\t\t<app-translated-vocabulary-select\r\n\t\t\t\t\t\t[label]=\"field.label\"\r\n\t\t\t\t\t\t[arbBindLabel]=\"field.arbBindLabel\"\r\n\t\t\t\t\t\t[engBindLabel]=\"field.engBindLabel\"\r\n\t\t\t\t\t\t[bindValue]=\"field.bindValue\"\r\n\t\t\t\t\t\tplaceholder=\"{{ field.placeholder | translate }}\"\r\n\t\t\t\t\t\t[multiple]=\"field.multiple\"\r\n\t\t\t\t\t\t[searchable]=\"field.searchable\"\r\n\t\t\t\t\t\t[closeOnSelect]=\"field.closeOnSelect\"\r\n\t\t\t\t\t\t[hideSelectedItems]=\"field.hideSelectedItems\"\r\n\t\t\t\t\t\t[formControlName]=\"field.formControlName\"\r\n\t\t\t\t\t\t[vocbularyId]=\"field.vocbularyId\"\r\n\t\t\t\t\t\t[useFilter]=\"field.useFilter\"\r\n\t\t\t\t\t\t[filter]=\"\r\n\t\t\t\t\t\t\tfield.filter === 'agencyName'\r\n\t\t\t\t\t\t\t\t? agencyNameFilter\r\n\t\t\t\t\t\t\t\t: field.filter === 'countryName'\r\n\t\t\t\t\t\t\t\t? countryNameFilter\r\n\t\t\t\t\t\t\t\t: field.filter === 'orgName'\r\n\t\t\t\t\t\t\t\t? orgNameFilter\r\n\t\t\t\t\t\t\t\t: field.filter === 'ngoName'\r\n\t\t\t\t\t\t\t\t? ngoNameFilter\r\n\t\t\t\t\t\t\t\t: {}\r\n\t\t\t\t\t\t\"\r\n\t\t\t\t\t\t[params]=\"field.params || {}\"\r\n\t\t\t\t\t\t[getByDirectorySuggestion]=\"field.getByDirectorySuggestion\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t</app-translated-vocabulary-select>\r\n\t\t\t\t</div>\r\n\t\t\t\t<ng-container *ngIf=\"field.selectable\">\r\n\t\t\t\t\t<ng-container\r\n\t\t\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t\t\tfieldsCheckBox;\r\n\t\t\t\t\t\t\tcontext: {\r\n\t\t\t\t\t\t\t\tcheckBoxTemplate: field.template,\r\n\t\t\t\t\t\t\t\tcontrolName: field.formControlName\r\n\t\t\t\t\t\t\t}\r\n\t\t\t\t\t\t\"\r\n\t\t\t\t\t></ng-container>\r\n\t\t\t\t</ng-container>\r\n\t\t\t</div>\r\n\r\n\t\t\t<!-- template in client -->\r\n\t\t\t<ng-container *ngIf=\"field.suggest\">\r\n\t\t\t\t<ng-container\r\n\t\t\t\t\t*ngTemplateOutlet=\"\r\n\t\t\t\t\t\tsuggest;\r\n\t\t\t\t\t\tcontext: {\r\n\t\t\t\t\t\t\tfield: field.label,\r\n\t\t\t\t\t\t\tsuggestName: field.suggest,\r\n\t\t\t\t\t\t\tcontrolName: field.formControlName,\r\n\t\t\t\t\t\t\ttemplate: field.suggestTemplate\r\n\t\t\t\t\t\t}\r\n\t\t\t\t\t\"\r\n\t\t\t\t></ng-container>\r\n\t\t\t</ng-container>\r\n\t\t</div>\r\n\t</div>\r\n</div>\r\n\r\n<ng-template #fieldsCheckBox let-checkBoxTemplate=\"checkBoxTemplate\" let-controlName=\"controlName\">\r\n\t<ng-container *ngTemplateOutlet=\"checkBoxTemplate; context: { controlName: controlName }\"> </ng-container>\r\n</ng-template>\r\n\r\n<!-- suggest -->\r\n<ng-template\r\n\t#suggest\r\n\tlet-field=\"field\"\r\n\tlet-suggestName=\"suggestName\"\r\n\tlet-controlName=\"controlName\"\r\n\tlet-template=\"template\"\r\n>\r\n\t<ng-container\r\n\t\t*ngTemplateOutlet=\"\r\n\t\t\ttemplate;\r\n\t\t\tcontext: {\r\n\t\t\t\tfield: field,\r\n\t\t\t\tsuggestName: suggestName,\r\n\t\t\t\tcontrolName: controlName\r\n\t\t\t}\r\n\t\t\"\r\n\t>\r\n\t</ng-container>\r\n</ng-template>\r\n<!-- suggest -->\r\n\r\n<!-- custom label -->\r\n<ng-template #customlabel let-controlName=\"controlName\" let-label=\"label\" let-template=\"template\">\r\n\t<ng-container\r\n\t\t*ngTemplateOutlet=\"\r\n\t\t\ttemplate;\r\n\t\t\tcontext: {\r\n\t\t\t\tlabel: label,\r\n\t\t\t\tcontrolName: controlName\r\n\t\t\t}\r\n\t\t\"\r\n\t>\r\n\t</ng-container>\r\n</ng-template>\r\n<!-- custom label -->\r\n", styles: [".single-field{width:100%}\n"], components: [{ type: DynamicFormTextareaComponent, selector: "app-dynamic-form-textarea", inputs: ["property", "label", "editable", "disabled", "id", "placeholder", "displayEmpty", "horizontalAlign"] }, { type: DynamicFormHijriDateitemComponent, selector: "cts-dynamic-form-hijri-dateitem", inputs: ["minHijri", "maxHijri", "minGreg", "maxGreg", "label", "isDisabled", "range", "vertical", "isReadOnly", "placeholder", "emitOnBlur"], outputs: ["valueChanged"] }, { type: SpellCheckerTextFieldComponent, selector: "ndf-spell-checker-text-field", inputs: ["id", "placeholder", "fieldType", "label"], outputs: ["checkFromText"] }, { type: DynamicFormVocabularyItemComponent, selector: "app-dynamic-form-vocabulary-item", inputs: ["onlyIds", "bindValue", "bindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "vocabularyType", "label", "cacheable", "shwoAllValues", "emitVocabulryRecordOnSelect"], 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: i2$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2$4.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: i4$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i2$4.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: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$4.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }, { type: i2$4.MinValidator, selector: "input[type=number][min][formControlName],input[type=number][min][formControl],input[type=number][min][ngModel]", inputs: ["min"] }, { type: i2$4.NumberValueAccessor, selector: "input[type=number][formControlName],input[type=number][formControl],input[type=number][ngModel]" }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
28019
28096
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicFieldsRendererComponent, decorators: [{
|
|
28020
28097
|
type: Component,
|
|
28021
28098
|
args: [{
|
|
@@ -34607,7 +34684,7 @@ class FilterComponent {
|
|
|
34607
34684
|
}
|
|
34608
34685
|
}
|
|
34609
34686
|
FilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FilterComponent, deps: [{ token: i2$4.FormBuilder }], target: i0.ɵɵFactoryTarget.Component });
|
|
34610
|
-
FilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: FilterComponent, selector: "cts-filter", inputs: { fields: "fields", filterTitle: "filterTitle" }, outputs: { onFiltering: "onFiltering" }, ngImport: i0, template: "<div class=\"filter-wrapper\">\r\n <div class=\"filter-title\">\r\n <!-- {{filterTitle | translate}} -->\r\n </div>\r\n <div class=\"iner-filter-wrapper\" *ngIf=\"filterForm\">\r\n <form [formGroup]=\"filterForm\">\r\n <div class=\"single-control-wrapper\" *ngFor=\"let field of fields\">\r\n\r\n <div class=\"control\" *ngIf=\"field.type === 'text'\">\r\n <app-dynamic-form-textitem\r\n [label]=\"field.label\"\r\n [formControlName]=\"field.formControlName\"\r\n placeholder=\"{{ 'CREATE.PLACE_HOLDER' | translate }} {{\r\n field.placeholder | translate\r\n }}\"\r\n >\r\n </app-dynamic-form-textitem>\r\n </div>\r\n\r\n <div class=\"control\" *ngIf=\"field.type === 'dropdown'\">\r\n <app-dynamic-form-vocabulary-item\r\n [shwoAllValues]=\"field.shwoAllValues ? field.shwoAllValues : false\"\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 [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=\"control\" *ngIf=\"field.type === 'rang'\">\r\n <cts-dynamic-form-hijri-dateitem [label]=\"field.label\" [formControlName]=\"field.formControlName\"[range]=\"true\" [vertical]=\"false\" >\r\n </cts-dynamic-form-hijri-dateitem>\r\n </div>\r\n\r\n <div class=\"control\" *ngIf=\"field.type === 'department'\">\r\n <app-dynamic-form-department\r\n [label]=\"field.label\"\r\n placeholder=\"{{ 'CREATE.PLACE_HOLDER' | translate }} {{\r\n field.placeholder | translate\r\n }}\"\r\n [formControlName]=\"field.formControlName\"\r\n >\r\n </app-dynamic-form-department>\r\n </div>\r\n\r\n <div class=\"control\" *ngIf=\"field.type === 'toggle'\">\r\n <cts-dynamic-form-slide-toggleitem\r\n [label]=\"field.label\"\r\n [formControlName]=\"field.formControlName\"\r\n ></cts-dynamic-form-slide-toggleitem>\r\n </div>\r\n\r\n <div class=\"control\" *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\r\n </div>\r\n\r\n </form>\r\n \r\n </div>\r\n <div class=\"form-actions\">\r\n <button class=\"my-button mx-2\" type=\"button\" (click)=\"filter()\"> {{'FILTER' | translate}}</button>\r\n <button class=\"my-button reset mx-2\" type=\"button\" (click)=\"reset()\"> {{'reset' | translate}}</button>\r\n </div>\r\n</div>\r\n\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}.filter-wrapper .filter-title{font-size:18px;font-weight:bold;margin-bottom:15px}.filter-wrapper .iner-filter-wrapper{height:320px;overflow:auto;scrollbar-color:#b4bac6 transparent!important;scrollbar-width:thin!important;padding:15px 15px 0}.filter-wrapper .iner-filter-wrapper .single-control-wrapper{margin-bottom:15px}.filter-wrapper .form-actions{display:flex;justify-content:flex-start;align-content:center;padding:10px 15px}.filter-wrapper .form-actions .filter{border:none;background-color:transparent;font-weight:bold;width:80px;height:40px;background-image:linear-gradient(to bottom,#0dbab5,#2e62df);color:#fff;border-radius:5px}\n"], components: [{ 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: ["onlyIds", "bindValue", "bindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "vocabularyType", "label", "cacheable", "shwoAllValues"], outputs: ["onSelecting"] }, { type: DynamicFormHijriDateitemComponent, selector: "cts-dynamic-form-hijri-dateitem", inputs: ["minHijri", "maxHijri", "minGreg", "maxGreg", "label", "isDisabled", "range", "vertical", "isReadOnly", "placeholder", "emitOnBlur"], outputs: ["valueChanged"] }, { type: DynamicFormDepartmentComponent, selector: "app-dynamic-form-department", inputs: ["treeview", "treeViewAsFormControl", "placeholder", "multiple", "searchable", "label", "defaultSelect", "displayDepTypee", "displayIsAllowRecExternal", "pp_departmentNestedTree", "pp_departmentTree", "customPrefix", "useCustomAddEditAction", "customParentProperty", "customParams", "disabled", "nodesExpandedByDefault", "fixedParentNode", "showTreeActions"], outputs: ["onSelecting", "actionClicked", "onDataLoad"] }, { type: DynamicFormSlideToggleitemComponent, selector: "cts-dynamic-form-slide-toggleitem", inputs: ["label", "disabled", "checked", "theme"], outputs: ["onToggle"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i2$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$4.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "translate": i1.TranslatePipe } });
|
|
34687
|
+
FilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: FilterComponent, selector: "cts-filter", inputs: { fields: "fields", filterTitle: "filterTitle" }, outputs: { onFiltering: "onFiltering" }, ngImport: i0, template: "<div class=\"filter-wrapper\">\r\n <div class=\"filter-title\">\r\n <!-- {{filterTitle | translate}} -->\r\n </div>\r\n <div class=\"iner-filter-wrapper\" *ngIf=\"filterForm\">\r\n <form [formGroup]=\"filterForm\">\r\n <div class=\"single-control-wrapper\" *ngFor=\"let field of fields\">\r\n\r\n <div class=\"control\" *ngIf=\"field.type === 'text'\">\r\n <app-dynamic-form-textitem\r\n [label]=\"field.label\"\r\n [formControlName]=\"field.formControlName\"\r\n placeholder=\"{{ 'CREATE.PLACE_HOLDER' | translate }} {{\r\n field.placeholder | translate\r\n }}\"\r\n >\r\n </app-dynamic-form-textitem>\r\n </div>\r\n\r\n <div class=\"control\" *ngIf=\"field.type === 'dropdown'\">\r\n <app-dynamic-form-vocabulary-item\r\n [shwoAllValues]=\"field.shwoAllValues ? field.shwoAllValues : false\"\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 [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=\"control\" *ngIf=\"field.type === 'rang'\">\r\n <cts-dynamic-form-hijri-dateitem [label]=\"field.label\" [formControlName]=\"field.formControlName\"[range]=\"true\" [vertical]=\"false\" >\r\n </cts-dynamic-form-hijri-dateitem>\r\n </div>\r\n\r\n <div class=\"control\" *ngIf=\"field.type === 'department'\">\r\n <app-dynamic-form-department\r\n [label]=\"field.label\"\r\n placeholder=\"{{ 'CREATE.PLACE_HOLDER' | translate }} {{\r\n field.placeholder | translate\r\n }}\"\r\n [formControlName]=\"field.formControlName\"\r\n >\r\n </app-dynamic-form-department>\r\n </div>\r\n\r\n <div class=\"control\" *ngIf=\"field.type === 'toggle'\">\r\n <cts-dynamic-form-slide-toggleitem\r\n [label]=\"field.label\"\r\n [formControlName]=\"field.formControlName\"\r\n ></cts-dynamic-form-slide-toggleitem>\r\n </div>\r\n\r\n <div class=\"control\" *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\r\n </div>\r\n\r\n </form>\r\n \r\n </div>\r\n <div class=\"form-actions\">\r\n <button class=\"my-button mx-2\" type=\"button\" (click)=\"filter()\"> {{'FILTER' | translate}}</button>\r\n <button class=\"my-button reset mx-2\" type=\"button\" (click)=\"reset()\"> {{'reset' | translate}}</button>\r\n </div>\r\n</div>\r\n\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}.filter-wrapper .filter-title{font-size:18px;font-weight:bold;margin-bottom:15px}.filter-wrapper .iner-filter-wrapper{height:320px;overflow:auto;scrollbar-color:#b4bac6 transparent!important;scrollbar-width:thin!important;padding:15px 15px 0}.filter-wrapper .iner-filter-wrapper .single-control-wrapper{margin-bottom:15px}.filter-wrapper .form-actions{display:flex;justify-content:flex-start;align-content:center;padding:10px 15px}.filter-wrapper .form-actions .filter{border:none;background-color:transparent;font-weight:bold;width:80px;height:40px;background-image:linear-gradient(to bottom,#0dbab5,#2e62df);color:#fff;border-radius:5px}\n"], components: [{ 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: ["onlyIds", "bindValue", "bindLabel", "placeholder", "multiple", "searchable", "closeOnSelect", "hideSelectedItems", "disabled", "vocabularyType", "label", "cacheable", "shwoAllValues", "emitVocabulryRecordOnSelect"], outputs: ["onSelecting"] }, { type: DynamicFormHijriDateitemComponent, selector: "cts-dynamic-form-hijri-dateitem", inputs: ["minHijri", "maxHijri", "minGreg", "maxGreg", "label", "isDisabled", "range", "vertical", "isReadOnly", "placeholder", "emitOnBlur"], outputs: ["valueChanged"] }, { type: DynamicFormDepartmentComponent, selector: "app-dynamic-form-department", inputs: ["treeview", "treeViewAsFormControl", "placeholder", "multiple", "searchable", "label", "defaultSelect", "displayDepTypee", "displayIsAllowRecExternal", "pp_departmentNestedTree", "pp_departmentTree", "customPrefix", "useCustomAddEditAction", "customParentProperty", "customParams", "disabled", "nodesExpandedByDefault", "fixedParentNode", "showTreeActions"], outputs: ["onSelecting", "actionClicked", "onDataLoad"] }, { type: DynamicFormSlideToggleitemComponent, selector: "cts-dynamic-form-slide-toggleitem", inputs: ["label", "disabled", "checked", "theme"], outputs: ["onToggle"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i2$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$4.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "translate": i1.TranslatePipe } });
|
|
34611
34688
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FilterComponent, decorators: [{
|
|
34612
34689
|
type: Component,
|
|
34613
34690
|
args: [{
|
|
@@ -42340,6 +42417,13 @@ class ReportConfigMapperService {
|
|
|
42340
42417
|
const _colors = [...((config === null || config === void 0 ? void 0 : config.colors) || []), ...getColors()];
|
|
42341
42418
|
return Object.assign(Object.assign({}, config), { colors: _colors, chart: chart });
|
|
42342
42419
|
}
|
|
42420
|
+
/**
|
|
42421
|
+
* Prepares a custom chart configuration
|
|
42422
|
+
* @param config
|
|
42423
|
+
*/
|
|
42424
|
+
prepareCustomConfig(config) {
|
|
42425
|
+
return config;
|
|
42426
|
+
}
|
|
42343
42427
|
/**
|
|
42344
42428
|
* Prepares a digit chart configuration
|
|
42345
42429
|
* @param config The digit chart definition
|
|
@@ -42384,6 +42468,136 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
42384
42468
|
}]
|
|
42385
42469
|
}], ctorParameters: function () { return [{ type: ChartPluginsRegistry }]; } });
|
|
42386
42470
|
|
|
42471
|
+
class CustomReportsRegistry {
|
|
42472
|
+
constructor(_factoryResolver) {
|
|
42473
|
+
this._factoryResolver = _factoryResolver;
|
|
42474
|
+
this._components = new Map();
|
|
42475
|
+
}
|
|
42476
|
+
/**
|
|
42477
|
+
* Register a component with the registry
|
|
42478
|
+
* @param config Component configuration
|
|
42479
|
+
*/
|
|
42480
|
+
registerComponent(config) {
|
|
42481
|
+
if (!config.type || !config.component) {
|
|
42482
|
+
throw new Error('Invalid component configuration: type and component are required');
|
|
42483
|
+
}
|
|
42484
|
+
if (this._components.has(config.type)) {
|
|
42485
|
+
console.warn(`Component with type '${config.type}' is already registered. Overwriting...`);
|
|
42486
|
+
}
|
|
42487
|
+
this._components.set(config.type, config);
|
|
42488
|
+
}
|
|
42489
|
+
/**
|
|
42490
|
+
* Register multiple components at once
|
|
42491
|
+
* @param configs Array of component configurations
|
|
42492
|
+
*/
|
|
42493
|
+
registerComponents(configs) {
|
|
42494
|
+
configs.forEach((config) => this.registerComponent(config));
|
|
42495
|
+
}
|
|
42496
|
+
/**
|
|
42497
|
+
* Render a component by type into a ViewContainerRef
|
|
42498
|
+
* @param type Component type identifier
|
|
42499
|
+
* @param vcr ViewContainerRef to render into
|
|
42500
|
+
*/
|
|
42501
|
+
renderComponent(type, vcr) {
|
|
42502
|
+
if (!this._components.has(type)) {
|
|
42503
|
+
throw new Error(`Unknown component with type: '${type}'`);
|
|
42504
|
+
}
|
|
42505
|
+
const config = this._components.get(type);
|
|
42506
|
+
return this.loadComponent(config, vcr);
|
|
42507
|
+
}
|
|
42508
|
+
/**
|
|
42509
|
+
* Load a component into a ViewContainerRef
|
|
42510
|
+
* @param config Component configuration
|
|
42511
|
+
* @param vcr ViewContainerRef to render into
|
|
42512
|
+
*/
|
|
42513
|
+
loadComponent(config, vcr) {
|
|
42514
|
+
const componentFactory = this._factoryResolver.resolveComponentFactory(config.component);
|
|
42515
|
+
return vcr.createComponent(componentFactory);
|
|
42516
|
+
}
|
|
42517
|
+
/**
|
|
42518
|
+
* Check if a component is registered
|
|
42519
|
+
* @param type Component type identifier
|
|
42520
|
+
*/
|
|
42521
|
+
hasComponent(type) {
|
|
42522
|
+
return this._components.has(type);
|
|
42523
|
+
}
|
|
42524
|
+
/**
|
|
42525
|
+
* Get component configuration by type
|
|
42526
|
+
* @param type Component type identifier
|
|
42527
|
+
*/
|
|
42528
|
+
getComponent(type) {
|
|
42529
|
+
return this._components.get(type);
|
|
42530
|
+
}
|
|
42531
|
+
/**
|
|
42532
|
+
* Get all registered component types
|
|
42533
|
+
*/
|
|
42534
|
+
getComponentTypes() {
|
|
42535
|
+
return Array.from(this._components.keys());
|
|
42536
|
+
}
|
|
42537
|
+
/**
|
|
42538
|
+
* Get all registered components
|
|
42539
|
+
*/
|
|
42540
|
+
getAllComponents() {
|
|
42541
|
+
return Array.from(this._components.values());
|
|
42542
|
+
}
|
|
42543
|
+
/**
|
|
42544
|
+
* Get components by category
|
|
42545
|
+
* @param category Category to filter by
|
|
42546
|
+
*/
|
|
42547
|
+
getComponentsByCategory(category) {
|
|
42548
|
+
return Array.from(this._components.values()).filter((config) => config.category === category);
|
|
42549
|
+
}
|
|
42550
|
+
/**
|
|
42551
|
+
* Get all unique categories
|
|
42552
|
+
*/
|
|
42553
|
+
getCategories() {
|
|
42554
|
+
const categories = Array.from(this._components.values())
|
|
42555
|
+
.map((config) => config.category)
|
|
42556
|
+
.filter((category) => !!category);
|
|
42557
|
+
return [...new Set(categories)];
|
|
42558
|
+
}
|
|
42559
|
+
/**
|
|
42560
|
+
* Unregister a component
|
|
42561
|
+
* @param type Component type identifier
|
|
42562
|
+
*/
|
|
42563
|
+
unregisterComponent(type) {
|
|
42564
|
+
return this._components.delete(type);
|
|
42565
|
+
}
|
|
42566
|
+
/**
|
|
42567
|
+
* Clear all registered components
|
|
42568
|
+
*/
|
|
42569
|
+
clearComponents() {
|
|
42570
|
+
this._components.clear();
|
|
42571
|
+
}
|
|
42572
|
+
/**
|
|
42573
|
+
* Get the total number of registered components
|
|
42574
|
+
*/
|
|
42575
|
+
getComponentCount() {
|
|
42576
|
+
return this._components.size;
|
|
42577
|
+
}
|
|
42578
|
+
/**
|
|
42579
|
+
* Search components by name or type
|
|
42580
|
+
* @param searchTerm Search term
|
|
42581
|
+
*/
|
|
42582
|
+
searchComponents(searchTerm) {
|
|
42583
|
+
const term = searchTerm.toLowerCase();
|
|
42584
|
+
return Array.from(this._components.values()).filter((config) => {
|
|
42585
|
+
var _a, _b;
|
|
42586
|
+
return config.type.toLowerCase().includes(term) ||
|
|
42587
|
+
((_a = config.name) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes(term)) ||
|
|
42588
|
+
((_b = config.description) === null || _b === void 0 ? void 0 : _b.toLowerCase().includes(term));
|
|
42589
|
+
});
|
|
42590
|
+
}
|
|
42591
|
+
}
|
|
42592
|
+
CustomReportsRegistry.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomReportsRegistry, deps: [{ token: i0.ComponentFactoryResolver }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
42593
|
+
CustomReportsRegistry.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomReportsRegistry, providedIn: 'root' });
|
|
42594
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomReportsRegistry, decorators: [{
|
|
42595
|
+
type: Injectable,
|
|
42596
|
+
args: [{
|
|
42597
|
+
providedIn: 'root'
|
|
42598
|
+
}]
|
|
42599
|
+
}], ctorParameters: function () { return [{ type: i0.ComponentFactoryResolver }]; } });
|
|
42600
|
+
|
|
42387
42601
|
class DigitChartComponent extends BaseChart {
|
|
42388
42602
|
constructor() {
|
|
42389
42603
|
super(...arguments);
|
|
@@ -42470,7 +42684,7 @@ class GraphChartComponent extends BaseChart {
|
|
|
42470
42684
|
}
|
|
42471
42685
|
}
|
|
42472
42686
|
GraphChartComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: GraphChartComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
42473
|
-
GraphChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: GraphChartComponent, selector: "app-graph-chart", usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"report$ | async as report\">\r\n\t<div class=\"chart-legends\"></div>\r\n\t<app-chart\r\n\t\t[type]=\"report.config.type\"\r\n\t\t[data]=\"report.data\"\r\n\t\t[options]=\"report.config?.options\"\r\n\t\t[plugins]=\"report.config?.plugins\"\r\n\t\t[responsive]=\"true\"\r\n\t\t(onReady)=\"chartReady($event)\"\r\n\t\tclass=\"app-chart\"\r\n\t></app-chart>\r\n</ng-container>\r\n", styles: [":host{--chart-height: var(--graph-chart-height,
|
|
42687
|
+
GraphChartComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: GraphChartComponent, selector: "app-graph-chart", usesInheritance: true, ngImport: i0, template: "<ng-container *ngIf=\"report$ | async as report\">\r\n\t<div class=\"chart-legends\"></div>\r\n\t<app-chart\r\n\t\t[type]=\"report.config.type\"\r\n\t\t[data]=\"report.data\"\r\n\t\t[options]=\"report.config?.options\"\r\n\t\t[plugins]=\"report.config?.plugins\"\r\n\t\t[responsive]=\"true\"\r\n\t\t(onReady)=\"chartReady($event)\"\r\n\t\tclass=\"app-chart\"\r\n\t></app-chart>\r\n</ng-container>\r\n", styles: [":host{--chart-height: var(--graph-chart-height, 330px);display:var(--graph-chart-display, flex);flex-direction:var(--graph-chart-direction, row);justify-content:var(--graph-chart-justify-content, between);align-items:var(--graph-chart-align-items, center);grid-gap:var(--graph-chart-gap, .5rem);gap:var(--graph-chart-gap, .5rem)}.app-chart{min-width:var(--app-chart-min-width, 0);min-height:var(--app-chart-min-height, 0);height:var(--app-chart-height, auto);width:var(--app-chart-width, 100%);padding:var(--app-chart-padding, 1rem);display:flex;align-items:center;justify-content:center;align-self:stretch}@media print{.app-chart ::ng-deep canvas{max-width:100%!important}}::ng-deep .chart-legends{max-height:var(--chart-legends-height, var(--chart-height));min-width:var(--chart-legends-width, 0);overflow:auto;font-size:1rem;text-align:start;display:flex;flex-direction:column;grid-gap:.2rem;gap:.2rem;padding-block:.5rem}::ng-deep .chart-legends:empty{--chart-legends-width: 0;display:none}::ng-deep .chart-legends.has-items{--chart-legends-width: 200px}::ng-deep .chart-legends__legend{display:flex;align-items:baseline;-webkit-user-select:none;user-select:none;cursor:default}::ng-deep .chart-legends__box{width:var(--chart-legends-box-width, 8px);height:var(--chart-legends-box-height, 8px);border-radius:var(--chart-legends-radius, 50%);margin-inline:var(--chart-legends-box-inline, 0 .5rem);display:inline-block;flex-shrink:0}\n"], components: [{ type: ChartComponent, selector: "app-chart", inputs: ["data", "options"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i4$1.AsyncPipe } });
|
|
42474
42688
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: GraphChartComponent, decorators: [{
|
|
42475
42689
|
type: Component,
|
|
42476
42690
|
args: [{
|
|
@@ -42491,6 +42705,7 @@ const REPORT_MODE = {
|
|
|
42491
42705
|
graph: 'graph',
|
|
42492
42706
|
digit: 'digit',
|
|
42493
42707
|
dynamicLine: 'dynamicLine',
|
|
42708
|
+
custom: 'custom',
|
|
42494
42709
|
};
|
|
42495
42710
|
|
|
42496
42711
|
const TIME_GROUPS = {
|
|
@@ -42538,7 +42753,8 @@ class BaseReport extends DestroySubject {
|
|
|
42538
42753
|
const mappers = {
|
|
42539
42754
|
[REPORT_MODE.graph]: this._configMapperService.prepareGraphConfig,
|
|
42540
42755
|
[REPORT_MODE.digit]: this._configMapperService.prepareDigitConfig,
|
|
42541
|
-
[REPORT_MODE.dynamicLine]: this._configMapperService.prepareGraphLineConfig
|
|
42756
|
+
[REPORT_MODE.dynamicLine]: this._configMapperService.prepareGraphLineConfig,
|
|
42757
|
+
[REPORT_MODE.custom]: this._configMapperService.prepareCustomConfig
|
|
42542
42758
|
};
|
|
42543
42759
|
return mappers[obj.mode].call(this._configMapperService, obj);
|
|
42544
42760
|
}
|
|
@@ -43040,6 +43256,109 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
43040
43256
|
args: ['graphChart']
|
|
43041
43257
|
}] } });
|
|
43042
43258
|
|
|
43259
|
+
class BaseCustomReport extends DestroySubject {
|
|
43260
|
+
constructor(injector) {
|
|
43261
|
+
super();
|
|
43262
|
+
this.injector = injector;
|
|
43263
|
+
this._chartHelperService = this.injector.get(ChartManagerService);
|
|
43264
|
+
this.direction = 'rtl';
|
|
43265
|
+
this._criteriaSub = new ReplaySubject(null);
|
|
43266
|
+
this.criteria$ = this._criteriaSub.asObservable();
|
|
43267
|
+
this._configSub = new BehaviorSubject(null);
|
|
43268
|
+
this.config$ = this._configSub.asObservable();
|
|
43269
|
+
}
|
|
43270
|
+
set criteria(value) {
|
|
43271
|
+
this._criteria = ___default.cloneDeep(value);
|
|
43272
|
+
this._criteriaSub.next(this._criteria);
|
|
43273
|
+
}
|
|
43274
|
+
set config(obj) {
|
|
43275
|
+
if (obj) {
|
|
43276
|
+
this._configSub.next(obj);
|
|
43277
|
+
}
|
|
43278
|
+
}
|
|
43279
|
+
get config() {
|
|
43280
|
+
return this._configSub.getValue();
|
|
43281
|
+
}
|
|
43282
|
+
chartReady(chart) {
|
|
43283
|
+
this.chart = chart;
|
|
43284
|
+
this._chartHelperService.setChart(chart);
|
|
43285
|
+
this._printListener = (event) => {
|
|
43286
|
+
this.chart.resize();
|
|
43287
|
+
};
|
|
43288
|
+
window.addEventListener('beforeprint', this._printListener);
|
|
43289
|
+
queueMicrotask(() => {
|
|
43290
|
+
this.chart.resize();
|
|
43291
|
+
});
|
|
43292
|
+
}
|
|
43293
|
+
}
|
|
43294
|
+
BaseCustomReport.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseCustomReport, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Directive });
|
|
43295
|
+
BaseCustomReport.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.17", type: BaseCustomReport, inputs: { direction: "direction", data: "data", criteria: "criteria", config: "config" }, usesInheritance: true, ngImport: i0 });
|
|
43296
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: BaseCustomReport, decorators: [{
|
|
43297
|
+
type: Directive
|
|
43298
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }]; }, propDecorators: { direction: [{
|
|
43299
|
+
type: Input
|
|
43300
|
+
}], data: [{
|
|
43301
|
+
type: Input
|
|
43302
|
+
}], criteria: [{
|
|
43303
|
+
type: Input
|
|
43304
|
+
}], config: [{
|
|
43305
|
+
type: Input
|
|
43306
|
+
}] } });
|
|
43307
|
+
|
|
43308
|
+
class CustomReportComponent extends BaseReport {
|
|
43309
|
+
constructor() {
|
|
43310
|
+
super(...arguments);
|
|
43311
|
+
this._registeredComponents = this.injector.get(CustomReportsRegistry);
|
|
43312
|
+
}
|
|
43313
|
+
ngOnInit() {
|
|
43314
|
+
var _a, _b;
|
|
43315
|
+
const componentType = this._registeredComponents.getComponent((_a = this.config) === null || _a === void 0 ? void 0 : _a.type);
|
|
43316
|
+
if (!componentType) {
|
|
43317
|
+
console.warn(`No component registered for type: ${(_b = this.config) === null || _b === void 0 ? void 0 : _b.type}`);
|
|
43318
|
+
return;
|
|
43319
|
+
}
|
|
43320
|
+
this._componentRef = this._registeredComponents.renderComponent(componentType.type, this.container);
|
|
43321
|
+
this._prepareComponent();
|
|
43322
|
+
}
|
|
43323
|
+
ngOnChanges(changes) {
|
|
43324
|
+
if (!this._componentRef) {
|
|
43325
|
+
return;
|
|
43326
|
+
}
|
|
43327
|
+
Object.keys(changes).forEach((key) => {
|
|
43328
|
+
this._componentRef.instance[key] = changes[key].currentValue;
|
|
43329
|
+
});
|
|
43330
|
+
this._componentRef.changeDetectorRef.markForCheck();
|
|
43331
|
+
}
|
|
43332
|
+
ngOnDestroy() {
|
|
43333
|
+
if (this._componentRef) {
|
|
43334
|
+
this._componentRef.destroy();
|
|
43335
|
+
}
|
|
43336
|
+
}
|
|
43337
|
+
_prepareComponent() {
|
|
43338
|
+
const instance = this._componentRef.instance;
|
|
43339
|
+
instance.config = this.config;
|
|
43340
|
+
instance.criteria = this.criteria;
|
|
43341
|
+
instance.data = this.data;
|
|
43342
|
+
instance.direction = this.direction;
|
|
43343
|
+
}
|
|
43344
|
+
}
|
|
43345
|
+
CustomReportComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomReportComponent, deps: null, target: i0.ɵɵFactoryTarget.Component });
|
|
43346
|
+
CustomReportComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CustomReportComponent, selector: "app-custom-report", host: { classAttribute: "custom-report flex flex-col flex-grow" }, viewQueries: [{ propertyName: "container", first: true, predicate: ["dynamicContainer"], descendants: true, read: ViewContainerRef, static: true }], usesInheritance: true, usesOnChanges: true, ngImport: i0, template: "<chart-panel *ngIf=\"config$ | async as config\" class=\"ndf-report chart-report\">\r\n\t<chart-panel-header class=\"ndf-report__header mb-3\">\r\n\t\t<span>\r\n\t\t\t{{ config.label | translate }}\r\n\t\t</span>\r\n\t\t<!--<button\r\n *ngIf=\"config?.dialog?.active\"\r\n class=\"dialog-button print:hidden\"\r\n (click)=\"openGraphDialog()\"\r\n [matTooltip]=\"'REPORTS.fullscreen' | translate\"\r\n >\r\n <mat-icon>fullscreen</mat-icon>\r\n </button>-->\r\n\t</chart-panel-header>\r\n\r\n\t<ng-container #dynamicContainer></ng-container>\r\n\r\n\t<chart-panel-footer class=\"ndf-report__footer flex-wrap\">\r\n\t\t<app-report-actions\r\n\t\t\t[config]=\"config\"\r\n\t\t\t(print)=\"printChart()\"\r\n\t\t\t(navigate)=\"navigate()\"\r\n\t\t\t(open)=\"onOpen.emit(null)\"\r\n\t\t></app-report-actions>\r\n\t</chart-panel-footer>\r\n</chart-panel>\r\n", styles: [""], components: [{ type: ChartPanel, selector: "chart-panel" }, { type: ChartPanelHeaderComponent, selector: "chart-panel-header" }, { type: ChartPanelFooterComponent, selector: "chart-panel-footer" }, { type: ReportActionsComponent, selector: "app-report-actions", inputs: ["config"], outputs: ["navigate", "open", "print"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "async": i4$1.AsyncPipe, "translate": i1.TranslatePipe } });
|
|
43347
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CustomReportComponent, decorators: [{
|
|
43348
|
+
type: Component,
|
|
43349
|
+
args: [{
|
|
43350
|
+
selector: 'app-custom-report',
|
|
43351
|
+
templateUrl: './custom-report.component.html',
|
|
43352
|
+
styleUrls: ['./custom-report.component.scss'],
|
|
43353
|
+
host: {
|
|
43354
|
+
class: 'custom-report flex flex-col flex-grow'
|
|
43355
|
+
}
|
|
43356
|
+
}]
|
|
43357
|
+
}], propDecorators: { container: [{
|
|
43358
|
+
type: ViewChild,
|
|
43359
|
+
args: ['dynamicContainer', { read: ViewContainerRef, static: true }]
|
|
43360
|
+
}] } });
|
|
43361
|
+
|
|
43043
43362
|
function mapToNdfTableConfig(report, details) {
|
|
43044
43363
|
var _a, _b, _c, _d, _e;
|
|
43045
43364
|
const _request = report.request;
|
|
@@ -43422,7 +43741,7 @@ NdfReportsModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", versio
|
|
|
43422
43741
|
DynamicTimelineReportComponent,
|
|
43423
43742
|
TimeGroupSelectorComponent,
|
|
43424
43743
|
GraphDialogComponent,
|
|
43425
|
-
TimelineDialogComponent, ScrollableDivDirective, GraphChartComponent, DigitChartComponent, ReportActionsComponent], imports: [CommonModule,
|
|
43744
|
+
TimelineDialogComponent, ScrollableDivDirective, GraphChartComponent, DigitChartComponent, ReportActionsComponent, CustomReportComponent], imports: [CommonModule,
|
|
43426
43745
|
TranslateModule,
|
|
43427
43746
|
MatMenuModule,
|
|
43428
43747
|
MatIconModule,
|
|
@@ -43467,7 +43786,7 @@ NdfReportsModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", versio
|
|
|
43467
43786
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NdfReportsModule, decorators: [{
|
|
43468
43787
|
type: NgModule,
|
|
43469
43788
|
args: [{
|
|
43470
|
-
declarations: [CONTAINERS, COMPONENTS, DIRECTIVES, CHARTS, ReportActionsComponent],
|
|
43789
|
+
declarations: [CONTAINERS, COMPONENTS, DIRECTIVES, CHARTS, ReportActionsComponent, CustomReportComponent],
|
|
43471
43790
|
imports: [
|
|
43472
43791
|
CommonModule,
|
|
43473
43792
|
TranslateModule,
|
|
@@ -44760,7 +45079,7 @@ const REPORTS_DATA = {
|
|
|
44760
45079
|
{
|
|
44761
45080
|
aggregation: 'RetentionInfo_activeRetentionExpireDate_agg',
|
|
44762
45081
|
propertyPath: 'aggregations.RetentionInfo_activeRetentionExpireDate_agg.buckets',
|
|
44763
|
-
transformer: '
|
|
45082
|
+
transformer: 'timeFormat',
|
|
44764
45083
|
},
|
|
44765
45084
|
],
|
|
44766
45085
|
chart: {
|
|
@@ -45540,5 +45859,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
45540
45859
|
* Generated bundle index. Do not edit.
|
|
45541
45860
|
*/
|
|
45542
45861
|
|
|
45543
|
-
export { ACTIONS_TABLE_TEMPLATE, AGGREGATION_FIELD_TYPES, AUTOCOMPLETE_TEMPLATE, ActionsTableTemplateDirective, ActiveUserSwitchComponent, ActivitiesLogComponent, ActivitiesLogModule, ActivityLineComponent, AdapterService, AddPermissionsDialogComponent, AddToCollectionComponent, AggregationAutocompleteComponent, AggregationCheckboxComponent, AggregationCustomComponent, AggregationDateListComponent, AggregationFieldComponent, AggregationGroupComponent, AggregationRadioComponent, AggregationSelectComponent, AggregationSwitchComponent, ApisErrorsMessagesService, AppConfigService, AppHasRoleDirective, AttachmentItemComponent, AttachmentItemModule, AttachmentModalModule, AttachmentsComponent, AttachmentsListComponent, AttachmentsPageProviderComponent, AutocompleteFilterPipe, AutocompleteTemplateDirective, AvatarComponent, AvatarModule, BaseChartBuilderService, BaseChartComponent, BaseColumnComponent, BaseComponent, BaseDatePicker, BaseDateValueAccessor, BaseDialogComponent, BaseNodeClass, BaseSelector, BaseService, BooleanViewerComponent, ButtonComponent, CHART_DEFAULTS_OPTIONS, CHART_MAIN_COLOR, CHECKBOX_TEMPLATE, COLORS_COUNT, COMPARISON_OPERATOR, CONFIG_EDITOR_MODE, CUSTOM_FIELD_TYPES, CUSTOM_TEMPLATE, CachingExpiryUnit, CalendarService, CallApiService, CardComponent, CardModule, ChartComponent, ChartDataService, ChartDataTransformers, index$1 as ChartDefaults, ChartManagerService, ChartPanel, ChartPanelFooterComponent, ChartPanelHeaderComponent, ChartPanelModule, index as ChartPlugins, ChartPluginsRegistry, index$2 as ChartUtils, ChartsModule, CheckConditionPipe, CheckboxTemplateDirective, CircleNode, CircleNodeComponent, ClickOutsideDirective, ClipboardComponent, CommentApiService, CommentsDashletComponent, CommentsModule, ComponentRegisterService, ComponentTranslationModel, ConfigEditorActionsComponent, ConfigPreviewComponent, ConfirmCallerDialogComponent, ConfirmCallerModule, ConfirmDialogComponent, ConfirmationDialogComponent, ConfirmationDialogModule, Connection, ConnectionLabelComponent, ContentActionType, ContentNode, ContentNodeComponent, CopyComponent, CopyToClipboardDirective, CopyToClipboardModule, CorrespondenceRelationComponent, CorrespondenceRelationCreateFormComponent, CorrespondenceRelationModule, CorrespondenceRelationService, CorrespondenceTagsComponent, CreateDirectoryComponent, CreateEntityComponent, CreateEntityModule, CreateModalComponent, CreationTypeComponent, CtsTagsModule, CustomConnectionComponent, CustomDocumentViewerComponent, CustomFieldComponent, CustomMomentDateAdapter, CustomPpViewerComponent, CustomSocketComponent, CustomTemplateDirective, CustomToastrModule, CustomToastrService, CutomeVocViewerComponent, DATE_LIST_TEMPLATE, DATE_LIST_VIEW, DATE_LOCALE_KEYS, DATE_TYPE, DEFAULT_DEBOUNCE_TIME, DEFAULT_VIEW, DIAGRAM_DEFAULT_OPTIONS, DIAGRAM_HEIGHT, DROPDOWN_LABEL_TEMPLATE, DROPDOWN_MULTI_LABEL_TEMPLATE, DROPDOWN_TEMPLATE, DataChartComponent, DataViewerComponent, DateFormatterService, DateHelperService, DateListTemplateDirective, DateViewerComponent, DeleteComponent, DepartmentApiService, DepartmentFormComponent, DepartmentManagementService, DepartmentViewerComponent, DestroySubject, DiagramDirective, DiagramPluginsService, DiagramService, DiagramUtils, DiagramsModule, DialogMangmentService, DigitChartService, DirectiveModule, DisplaySuitableIconComponent, DisplaySuitableIconModule, DocumentScanService, DocumentTemplatesConstants, DocumentTemplatesService, DocumentUploadComponent, DocumentsComponent, DocumentsConstants, DocumentsListComponent, DocumentsModule, DocumentsService, DragAndDropDirective, DropdownLabelTemplateDirective, DropdownMultiLabelTemplateDirective, DropdownTemplateDirective, DropdownViewerComponent, DynamicChartComponent, DynamicChartModule, DynamicColumnComponent, DynamicCustomComponent, DynamicFieldsRendererComponent, DynamicFieldsRendererModule, DynamicFilterComponent, DynamicFilterModule, DynamicFormBoolItemComponent, DynamicFormBuilderComponent, DynamicFormCheckboxItemComponent, DynamicFormComponent, DynamicFormDateItemComponent, DynamicFormDepartmentComponent, DynamicFormFieldComponent, DynamicFormHijriDateitemComponent, DynamicFormMapItemComponent, DynamicFormModule, DynamicFormOptionsComponent, DynamicFormSelectItemComponent, DynamicFormSelectTagComponent, DynamicFormSelectUserFilterComponent, DynamicFormSelectUsersComponent, DynamicFormService, DynamicFormSlideToggleitemComponent, DynamicFormTextItemComponent, DynamicFormTextareaComponent, DynamicFormViewerComponent, DynamicFormVocabularyItemComponent, DynamicSearchComponent, DynamicSearchModule, DynamicTableComponent, DynamicTableModule, DynamicTableService, DynamicTabsComponent, DynamicTabsModule, DynamicTimelineReportService, DynamicViewModule, EMPTY_TEMPLATE, ENTITY_TYPE, EXTENSION_JSONS, EditDeleteModalComponent, EditorModeSwitchComponent, EditorSettingsComponent, ElementHeightDirective, ElementHeightModule, EmptyTemplateDirective, EnvManager, Evaluator, EvaluatorsService, ExtensionLoaderService, ExtensionService, FIELD_SEND_MODE, FIELD_TYPE, FILTER_CUSTOM_TEMPLATE, FILTER_DATES_TYPE, FieldHeaderComponent, FieldValueObject, FileGridInfiniteScrollDirective, FileManagerAbstract, FileManagerAdapter, FileManagerPaginationConfig, FileManagerService, FileMangerModule, FileSizePipe, FilterAutocompleteInputComponent, FilterCollapseControlComponent, FilterComponent, FilterCustomTemplateDirective, FilterDateRangeComponent, FilterEmptyMessageComponent, FilterModule, FilterOptionTextComponent, FilterOptionsSortComponent, FilterPipe, FilterQueryService, FilterSearchInputComponent, FiltersByRolesPipe, FiltersMapperService, FiltersPanelComponent, FluidHeightDirective, FluidHeightModule, FolderModalComponent, FolderishType, FormBuilderService, GREGORIAN_DATE_FORMATS, GREGORIAN_FORMAT, GatewayNodeComponent, GatewayPortsComponent, GlobalAdminService, GlobalPdfTron, GregorianDatepickerComponent, HIJRI_DATE_ARABIC_NAMES, HIJRI_DATE_ENGLISH_NAMES, HIJRI_DATE_FORMATS, HIJRI_FORMAT, HashTranslateAsyncPipe, HashTranslatePipe, HijriAdapterService, HijriDatePipe, HijriDatepickerComponent, HijriGregorianDatepickerComponent, HtmlDialogComponent, IN_OUT_DIRECTION, IconService, InfoDialogComponent, InitializationService, InputDateComponent, InputPort, InputRangeDateComponent, ItemListComponent, Lang, LatestActivityComponent, LatestActivityModule, LibrarySharedModule, ListViewerComponent, LoanRequestComponent, LocalStoragService, LocalizeState, LocalizedDatePipe, LocalizedLabelPipe, MAT_MOMENT_DATE_ADAPTER_OPTIONS, MAT_MOMENT_DATE_ADAPTER_OPTIONS_FACTORY, MESSAGE_TYPE, MIN_VISIBLE_COUNT, MONACO_EDITOR_CONFIG, MY_MOMENT_FORMATS, MainfolderService, MapToAggregationConfigPipe, MessageService, ModeTogglerComponent, MomentDateAdapter, MonacoEditorComponent, MoveComponent, MultiValuePipe, MultipleDynamicFormViewerComponent, MutipleDynamicFormViewerModule, NDF_EDITOR_TYPE, NODE_CIRCLE_SIZE, NODE_GATEWAY_SIZE, NODE_HEIGHT, NODE_MARGIN, NODE_STATUS, NODE_TYPE, NODE_WIDTH, NOTIFICATIONS_LIST_OPTIONS, NOTIFICATION_ICON, NOTIFICATION_ITEM, NOTIFICATION_STATUS, NOTIFY_EVENT, NdfConfigEditorComponent, NdfConfigEditorModule, NdfConfirmationDialogComponent, NdfDatepickerComponent, NdfDatepickerModule, NdfFiltersPanelModule, NdfGregorianDatepickerComponent, NdfHijriDatepickerComponent, NdfNuxeoDialog, NdfPanelComponent, NdfPanelModule, NdfReportComponent, NdfReportsComponent, NdfReportsModule, NdfReportsService, NdfTableComponent, NdfTableConfigurationService, NdfTableModule, NdfTableService, NdfTabsComponent, NdfTabsModule, NdfTransformService, NgxHijriGregorianDatepickerModule, NoDataComponent, NoDataFoundComponent, NoDataModule, NodeIconComponent, NodeInputsComponent, NodeOutputsComponent, NodePortsComponent, NotificationIconDirective, NotificationItemComponent, NotificationItemDirective, NotificationSourceSelectComponent, NotificationStatusToggleComponent, NotificationToastComponent, NotificationsButtonComponent, NotificationsDateSelectComponent, NotificationsListComponent, NotificationsListContainerComponent, NotificationsModule, NotificationsService, NotificationsSettingsContainerComponent, NuxeoCoreModule, NuxeoDevelopmentFrameworkComponent, NuxeoDevelopmentFrameworkModule, NuxeoDevelopmentFrameworkService, NuxeoDialogModule, NuxeoDialogService, NuxeoMapper, NuxeoService, NxQL, NxQlQuery, OutputPort, PAGINATION_MODE, PANEL_MODE, PARAMS_KEYS, PREDICATE_FIELD_TYPES, PROJECT_BASE_HREF, PageSizesListComponent, PaginationComponent, PaginationModule, PdfTronModule, PdftronComponent, PdftronService, PermissionService, PermissionsComponent, PermissionsDirective, PermissionsModule, PermissionsTemplateComponent, PipesModule, PredicateDateInputComponent, PredicateFieldComponent, PredicateTextInputComponent, PublishDialogComponent, PublishingDocumentService, RADIO_TEMPLATE, RadioTemplateDirective, ReadMoreComponent, RecentlyViewedService, RemoveButtonComponent, RenameComponent, ReportConfigMapperService, ReportTransformService, ReportsDataTransformers, ReportsStateService, RolesService, SEARCH_TABLE_TEMPLATE, SOCKET_WIDTH, SUBSCRIPTION_STATE, SWITCH_TEMPLATE, SafeHtmlPipe, SanitizerPipe, ScanComponent, ScanModalComponent, SearchAutocompleteComponent, SearchTableTemplateDirective, SecurePipe, SelectComponent, SelectModule, SelectUsersByDepartmentModule, SelectUsersByDepartmentsComponent, SetDirRtlDirective, SetRtlDirective, ShareDialogComponent, SharedDocsService, SharedServicesModule, SidepanelComponent, SilentPdfTronService, SingleActivityComponent, SkeletonComponent, SkeletonModule, Socket, SortListPipe, SortingListComponent, SpellCheckerFieldModule, SpellCheckerTextFieldComponent, SpinnerComponent, StatisticService, StatusIconComponent, SwitchTemplateDirective, TRANSLATION_PROVIDER, TableColumnsTogglerComponent, TableComponent, TableExportComponent, TableModule, TableSkeletonComponent, TagsApiService, TemplateModalComponent, TemplateNode, TemplateNodeComponent, TextSearchComponent, TimeAgoPipe, ToastsModule, TooltipPipe, TransferDocComponent, TranslateLoaderService, TranslatedVocabularySelectComponent, TranslationService, TreeviewSelectComponent, UpdateModalComponent, UploadFileService, UploadManagmentService, UserCardComponent, UserComponent, UserModule, UserPreferenceValues, UserPreferencesService, UserService, UsersCardComponent, UsersCardModule, UtilityService, VALUE_OBJECT, VersionsComponent, ViewerFilesService, ViewerLogComponent, ViewerLogModule, VocabularyApiService, VocabularyComponent, VocabularyModule, WorkflowService, ZoomControlComponent, appInitializer, departmentCacheBuster$, extensionJsonsFactory, filterEnabled, getChartsOptions, getConnections, getDoughnutOptions, getHorizontalBarOptions, getLineOptions, getPieOptions, getRandomNumber, getValue, getVerticalBarOptions, isDateObject, isFieldValueObject, mergeArrays, mergeObjects, minute$1 as minute, provideExtensionConfig, reduceEmptyMenus, reduceSeparators, removeConnections, removeEmptyKeys, removeNode, removeNodeAndConnections, serializeControl, serializePort, slideAnimation, sortByOrder };
|
|
45862
|
+
export { ACTIONS_TABLE_TEMPLATE, AGGREGATION_FIELD_TYPES, AUTOCOMPLETE_TEMPLATE, ActionsTableTemplateDirective, ActiveUserSwitchComponent, ActivitiesLogComponent, ActivitiesLogModule, ActivityLineComponent, AdapterService, AddPermissionsDialogComponent, AddToCollectionComponent, AggregationAutocompleteComponent, AggregationCheckboxComponent, AggregationCustomComponent, AggregationDateListComponent, AggregationFieldComponent, AggregationGroupComponent, AggregationRadioComponent, AggregationSelectComponent, AggregationSwitchComponent, ApisErrorsMessagesService, AppConfigService, AppHasRoleDirective, AttachmentItemComponent, AttachmentItemModule, AttachmentModalModule, AttachmentsComponent, AttachmentsListComponent, AttachmentsPageProviderComponent, AutocompleteFilterPipe, AutocompleteTemplateDirective, AvatarComponent, AvatarModule, BaseChartBuilderService, BaseChartComponent, BaseColumnComponent, BaseComponent, BaseDatePicker, BaseDateValueAccessor, BaseDialogComponent, BaseNodeClass, BaseSelector, BaseService, BooleanViewerComponent, ButtonComponent, CHART_DEFAULTS_OPTIONS, CHART_MAIN_COLOR, CHECKBOX_TEMPLATE, COLORS_COUNT, COMPARISON_OPERATOR, CONFIG_EDITOR_MODE, CUSTOM_FIELD_TYPES, CUSTOM_TEMPLATE, CachingExpiryUnit, CalendarService, CallApiService, CardComponent, CardModule, ChartComponent, ChartDataService, ChartDataTransformers, index$1 as ChartDefaults, ChartManagerService, ChartPanel, ChartPanelFooterComponent, ChartPanelHeaderComponent, ChartPanelModule, index as ChartPlugins, ChartPluginsRegistry, index$2 as ChartUtils, ChartsModule, CheckConditionPipe, CheckboxTemplateDirective, CircleNode, CircleNodeComponent, ClickOutsideDirective, ClipboardComponent, CommentApiService, CommentsDashletComponent, CommentsModule, ComponentRegisterService, ComponentTranslationModel, ConfigEditorActionsComponent, ConfigPreviewComponent, ConfirmCallerDialogComponent, ConfirmCallerModule, ConfirmDialogComponent, ConfirmationDialogComponent, ConfirmationDialogModule, Connection, ConnectionLabelComponent, ContentActionType, ContentNode, ContentNodeComponent, CopyComponent, CopyToClipboardDirective, CopyToClipboardModule, CorrespondenceRelationComponent, CorrespondenceRelationCreateFormComponent, CorrespondenceRelationModule, CorrespondenceRelationService, CorrespondenceTagsComponent, CreateDirectoryComponent, CreateEntityComponent, CreateEntityModule, CreateModalComponent, CreationTypeComponent, CtsTagsModule, CustomConnectionComponent, CustomDocumentViewerComponent, CustomFieldComponent, CustomMomentDateAdapter, CustomPpViewerComponent, CustomReportsRegistry, CustomSocketComponent, CustomTemplateDirective, CustomToastrModule, CustomToastrService, CutomeVocViewerComponent, DATE_LIST_TEMPLATE, DATE_LIST_VIEW, DATE_LOCALE_KEYS, DATE_TYPE, DEFAULT_DEBOUNCE_TIME, DEFAULT_VIEW, DIAGRAM_DEFAULT_OPTIONS, DIAGRAM_HEIGHT, DROPDOWN_LABEL_TEMPLATE, DROPDOWN_MULTI_LABEL_TEMPLATE, DROPDOWN_TEMPLATE, DataChartComponent, DataViewerComponent, DateFormatterService, DateHelperService, DateListTemplateDirective, DateViewerComponent, DeleteComponent, DepartmentApiService, DepartmentFormComponent, DepartmentManagementService, DepartmentViewerComponent, DestroySubject, DiagramDirective, DiagramPluginsService, DiagramService, DiagramUtils, DiagramsModule, DialogMangmentService, DigitChartService, DirectiveModule, DisplaySuitableIconComponent, DisplaySuitableIconModule, DocumentScanService, DocumentTemplatesConstants, DocumentTemplatesService, DocumentUploadComponent, DocumentsComponent, DocumentsConstants, DocumentsListComponent, DocumentsModule, DocumentsService, DragAndDropDirective, DropdownLabelTemplateDirective, DropdownMultiLabelTemplateDirective, DropdownTemplateDirective, DropdownViewerComponent, DynamicChartComponent, DynamicChartModule, DynamicColumnComponent, DynamicCustomComponent, DynamicFieldsRendererComponent, DynamicFieldsRendererModule, DynamicFilterComponent, DynamicFilterModule, DynamicFormBoolItemComponent, DynamicFormBuilderComponent, DynamicFormCheckboxItemComponent, DynamicFormComponent, DynamicFormDateItemComponent, DynamicFormDepartmentComponent, DynamicFormFieldComponent, DynamicFormHijriDateitemComponent, DynamicFormMapItemComponent, DynamicFormModule, DynamicFormOptionsComponent, DynamicFormSelectItemComponent, DynamicFormSelectTagComponent, DynamicFormSelectUserFilterComponent, DynamicFormSelectUsersComponent, DynamicFormService, DynamicFormSlideToggleitemComponent, DynamicFormTextItemComponent, DynamicFormTextareaComponent, DynamicFormViewerComponent, DynamicFormVocabularyItemComponent, DynamicSearchComponent, DynamicSearchModule, DynamicTableComponent, DynamicTableModule, DynamicTableService, DynamicTabsComponent, DynamicTabsModule, DynamicTimelineReportService, DynamicViewModule, EMPTY_TEMPLATE, ENTITY_TYPE, EXTENSION_JSONS, EditDeleteModalComponent, EditorModeSwitchComponent, EditorSettingsComponent, ElementHeightDirective, ElementHeightModule, EmptyTemplateDirective, EnvManager, Evaluator, EvaluatorsService, ExtensionLoaderService, ExtensionService, FIELD_SEND_MODE, FIELD_TYPE, FILTER_CUSTOM_TEMPLATE, FILTER_DATES_TYPE, FieldHeaderComponent, FieldValueObject, FileGridInfiniteScrollDirective, FileManagerAbstract, FileManagerAdapter, FileManagerPaginationConfig, FileManagerService, FileMangerModule, FileSizePipe, FilterAutocompleteInputComponent, FilterCollapseControlComponent, FilterComponent, FilterCustomTemplateDirective, FilterDateRangeComponent, FilterEmptyMessageComponent, FilterModule, FilterOptionTextComponent, FilterOptionsSortComponent, FilterPipe, FilterQueryService, FilterSearchInputComponent, FiltersByRolesPipe, FiltersMapperService, FiltersPanelComponent, FluidHeightDirective, FluidHeightModule, FolderModalComponent, FolderishType, FormBuilderService, GREGORIAN_DATE_FORMATS, GREGORIAN_FORMAT, GatewayNodeComponent, GatewayPortsComponent, GlobalAdminService, GlobalPdfTron, GregorianDatepickerComponent, HIJRI_DATE_ARABIC_NAMES, HIJRI_DATE_ENGLISH_NAMES, HIJRI_DATE_FORMATS, HIJRI_FORMAT, HashTranslateAsyncPipe, HashTranslatePipe, HijriAdapterService, HijriDatePipe, HijriDatepickerComponent, HijriGregorianDatepickerComponent, HtmlDialogComponent, IN_OUT_DIRECTION, IconService, InfoDialogComponent, InitializationService, InputDateComponent, InputPort, InputRangeDateComponent, ItemListComponent, Lang, LatestActivityComponent, LatestActivityModule, LibrarySharedModule, ListViewerComponent, LoanRequestComponent, LocalStoragService, LocalizeState, LocalizedDatePipe, LocalizedLabelPipe, MAT_MOMENT_DATE_ADAPTER_OPTIONS, MAT_MOMENT_DATE_ADAPTER_OPTIONS_FACTORY, MESSAGE_TYPE, MIN_VISIBLE_COUNT, MONACO_EDITOR_CONFIG, MY_MOMENT_FORMATS, MainfolderService, MapToAggregationConfigPipe, MessageService, ModeTogglerComponent, MomentDateAdapter, MonacoEditorComponent, MoveComponent, MultiValuePipe, MultipleDynamicFormViewerComponent, MutipleDynamicFormViewerModule, NDF_EDITOR_TYPE, NODE_CIRCLE_SIZE, NODE_GATEWAY_SIZE, NODE_HEIGHT, NODE_MARGIN, NODE_STATUS, NODE_TYPE, NODE_WIDTH, NOTIFICATIONS_LIST_OPTIONS, NOTIFICATION_ICON, NOTIFICATION_ITEM, NOTIFICATION_STATUS, NOTIFY_EVENT, NdfConfigEditorComponent, NdfConfigEditorModule, NdfConfirmationDialogComponent, NdfDatepickerComponent, NdfDatepickerModule, NdfFiltersPanelModule, NdfGregorianDatepickerComponent, NdfHijriDatepickerComponent, NdfNuxeoDialog, NdfPanelComponent, NdfPanelModule, NdfReportComponent, NdfReportsComponent, NdfReportsModule, NdfReportsService, NdfTableComponent, NdfTableConfigurationService, NdfTableModule, NdfTableService, NdfTabsComponent, NdfTabsModule, NdfTransformService, NgxHijriGregorianDatepickerModule, NoDataComponent, NoDataFoundComponent, NoDataModule, NodeIconComponent, NodeInputsComponent, NodeOutputsComponent, NodePortsComponent, NotificationIconDirective, NotificationItemComponent, NotificationItemDirective, NotificationSourceSelectComponent, NotificationStatusToggleComponent, NotificationToastComponent, NotificationsButtonComponent, NotificationsDateSelectComponent, NotificationsListComponent, NotificationsListContainerComponent, NotificationsModule, NotificationsService, NotificationsSettingsContainerComponent, NuxeoCoreModule, NuxeoDevelopmentFrameworkComponent, NuxeoDevelopmentFrameworkModule, NuxeoDevelopmentFrameworkService, NuxeoDialogModule, NuxeoDialogService, NuxeoMapper, NuxeoService, NxQL, NxQlQuery, OutputPort, PAGINATION_MODE, PANEL_MODE, PARAMS_KEYS, PREDICATE_FIELD_TYPES, PROJECT_BASE_HREF, PageSizesListComponent, PaginationComponent, PaginationModule, PdfTronModule, PdftronComponent, PdftronService, PermissionService, PermissionsComponent, PermissionsDirective, PermissionsModule, PermissionsTemplateComponent, PipesModule, PredicateDateInputComponent, PredicateFieldComponent, PredicateTextInputComponent, PublishDialogComponent, PublishingDocumentService, RADIO_TEMPLATE, RadioTemplateDirective, ReadMoreComponent, RecentlyViewedService, RemoveButtonComponent, RenameComponent, ReportConfigMapperService, ReportTransformService, ReportsDataTransformers, ReportsStateService, RolesService, SEARCH_TABLE_TEMPLATE, SOCKET_WIDTH, SUBSCRIPTION_STATE, SWITCH_TEMPLATE, SafeHtmlPipe, SanitizerPipe, ScanComponent, ScanModalComponent, SearchAutocompleteComponent, SearchTableTemplateDirective, SecurePipe, SelectComponent, SelectModule, SelectUsersByDepartmentModule, SelectUsersByDepartmentsComponent, SetDirRtlDirective, SetRtlDirective, ShareDialogComponent, SharedDocsService, SharedServicesModule, SidepanelComponent, SilentPdfTronService, SingleActivityComponent, SkeletonComponent, SkeletonModule, Socket, SortListPipe, SortingListComponent, SpellCheckerFieldModule, SpellCheckerTextFieldComponent, SpinnerComponent, StatisticService, StatusIconComponent, SwitchTemplateDirective, TRANSLATION_PROVIDER, TableColumnsTogglerComponent, TableComponent, TableExportComponent, TableModule, TableSkeletonComponent, TagsApiService, TemplateModalComponent, TemplateNode, TemplateNodeComponent, TextSearchComponent, TimeAgoPipe, ToastsModule, TooltipPipe, TransferDocComponent, TranslateLoaderService, TranslatedVocabularySelectComponent, TranslationService, TreeviewSelectComponent, UpdateModalComponent, UploadFileService, UploadManagmentService, UserCardComponent, UserComponent, UserModule, UserPreferenceValues, UserPreferencesService, UserService, UsersCardComponent, UsersCardModule, UtilityService, VALUE_OBJECT, VersionsComponent, ViewerFilesService, ViewerLogComponent, ViewerLogModule, VocabularyApiService, VocabularyComponent, VocabularyModule, WorkflowService, ZoomControlComponent, appInitializer, departmentCacheBuster$, extensionJsonsFactory, filterEnabled, getChartsOptions, getConnections, getDoughnutOptions, getHorizontalBarOptions, getLineOptions, getPieOptions, getRandomNumber, getValue, getVerticalBarOptions, isDateObject, isFieldValueObject, mergeArrays, mergeObjects, minute$1 as minute, provideExtensionConfig, reduceEmptyMenus, reduceSeparators, removeConnections, removeEmptyKeys, removeNode, removeNodeAndConnections, serializeControl, serializePort, slideAnimation, sortByOrder };
|
|
45544
45863
|
//# sourceMappingURL=nuxeo-development-framework.js.map
|