nuxeo-development-framework 4.2.2 → 4.2.3
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 +306 -279
- package/bundles/nuxeo-development-framework.umd.js.map +1 -1
- package/esm2015/lib/components/comments/components/comment-item/comment-item.component.js +30 -23
- package/esm2015/lib/components/correspondence-relation/components/correspondence-relation/correspondence-relation.component.js +27 -32
- package/esm2015/lib/components/correspondence-relation/components/correspondence-relation-list/correspondence-relation-list.component.js +27 -32
- package/esm2015/lib/components/documents/components/document-list/documents-list.component.js +22 -19
- package/esm2015/lib/components/file-manger/components/add-to-collection/add-to-collection.component.js +2 -2
- package/esm2015/lib/components/file-manger/components/create-directory/create-directory.component.js +2 -2
- package/esm2015/lib/components/file-manger/components/move/move.component.js +2 -2
- package/esm2015/lib/components/file-manger/file-manager.abstract.js +27 -25
- package/esm2015/lib/components/permissions/permissions/permissions.component.js +100 -57
- package/esm2015/lib/components/permissions/permissions-template/permissions-template.component.js +36 -52
- package/esm2015/lib/shared-services/dialog-mangment.service.js +27 -23
- package/esm2015/lib/shared-services/shared-docs.service.js +22 -27
- package/fesm2015/nuxeo-development-framework.js +287 -260
- package/fesm2015/nuxeo-development-framework.js.map +1 -1
- package/lib/components/comments/components/comment-item/comment-item.component.d.ts +3 -1
- package/lib/components/correspondence-relation/components/correspondence-relation/correspondence-relation.component.d.ts +4 -2
- package/lib/components/correspondence-relation/components/correspondence-relation-list/correspondence-relation-list.component.d.ts +4 -2
- package/lib/components/documents/components/document-list/documents-list.component.d.ts +3 -1
- package/lib/components/file-manger/file-manager.abstract.d.ts +3 -1
- package/lib/components/permissions/permissions/permissions.component.d.ts +3 -1
- package/lib/components/permissions/permissions-template/permissions-template.component.d.ts +3 -3
- package/lib/shared-services/dialog-mangment.service.d.ts +3 -3
- package/lib/shared-services/shared-docs.service.d.ts +4 -2
- package/package.json +2 -2
|
@@ -56,11 +56,11 @@ import { NgSelectComponent, NgSelectModule } from '@ng-select/ng-select';
|
|
|
56
56
|
import * as i6 from '@angular/material/form-field';
|
|
57
57
|
import * as i8 from '@angular/material/chips';
|
|
58
58
|
import { MatChipsModule } from '@angular/material/chips';
|
|
59
|
-
import * as
|
|
59
|
+
import * as i7$1 from '@angular/material/expansion';
|
|
60
60
|
import { MatExpansionModule } from '@angular/material/expansion';
|
|
61
61
|
import * as i1$9 from '@angular/material/button';
|
|
62
62
|
import { MatButtonModule } from '@angular/material/button';
|
|
63
|
-
import * as i7$
|
|
63
|
+
import * as i7$2 from '@angular/material/checkbox';
|
|
64
64
|
import { MatCheckboxModule } from '@angular/material/checkbox';
|
|
65
65
|
import { MatDatepickerModule } from '@angular/material/datepicker';
|
|
66
66
|
import * as i5 from '@angular/material/input';
|
|
@@ -69,7 +69,7 @@ import * as i2$8 from '@angular/material/radio';
|
|
|
69
69
|
import { MatRadioModule } from '@angular/material/radio';
|
|
70
70
|
import * as i2$7 from '@angular/material/slide-toggle';
|
|
71
71
|
import { MatSlideToggleModule } from '@angular/material/slide-toggle';
|
|
72
|
-
import * as i6$
|
|
72
|
+
import * as i6$1 from '@busacca/ng-pick-datetime';
|
|
73
73
|
import { OWL_DATE_TIME_FORMATS, OwlDateTimeIntl, OwlDateTimeModule, OwlNativeDateTimeModule } from '@busacca/ng-pick-datetime';
|
|
74
74
|
import { MatDatetimepickerModule, MatNativeDatetimeModule } from '@mat-datetimepicker/core';
|
|
75
75
|
import * as i3$3 from 'angular-formio';
|
|
@@ -87,7 +87,7 @@ import * as i4$2 from '@swimlane/ngx-datatable';
|
|
|
87
87
|
import { NgxDatatableModule } from '@swimlane/ngx-datatable';
|
|
88
88
|
import * as i5$1 from '@angular/cdk/layout';
|
|
89
89
|
import { LayoutModule } from '@angular/cdk/layout';
|
|
90
|
-
import * as i7$
|
|
90
|
+
import * as i7$3 from '@angular/material/autocomplete';
|
|
91
91
|
import { MatAutocompleteModule } from '@angular/material/autocomplete';
|
|
92
92
|
import Dynamsoft from 'dwt';
|
|
93
93
|
import * as i4$3 from '@angular/material/progress-bar';
|
|
@@ -103,7 +103,7 @@ import { DxiToolbarItemModule } from 'devextreme-angular/ui/nested';
|
|
|
103
103
|
import WebViewer from '@pdftron/webviewer';
|
|
104
104
|
import * as i1$8 from '@angular/material/tabs';
|
|
105
105
|
import { MatTabsModule } from '@angular/material/tabs';
|
|
106
|
-
import * as
|
|
106
|
+
import * as i9$1 from '@angular/material/divider';
|
|
107
107
|
import { MatDividerModule } from '@angular/material/divider';
|
|
108
108
|
import localeAr from '@angular/common/locales/ar';
|
|
109
109
|
import localeEn from '@angular/common/locales/en';
|
|
@@ -120,7 +120,7 @@ import { MinimapPlugin } from 'rete-minimap-plugin';
|
|
|
120
120
|
import { curveLinear } from 'd3-shape';
|
|
121
121
|
import { ConnectionPathPlugin, Transformers } from 'rete-connection-path-plugin';
|
|
122
122
|
import { getDOMSocketPosition } from 'rete-render-utils';
|
|
123
|
-
import * as i7$
|
|
123
|
+
import * as i7$4 from '@angular/material/badge';
|
|
124
124
|
import { MatBadgeModule } from '@angular/material/badge';
|
|
125
125
|
import { MatToolbarModule } from '@angular/material/toolbar';
|
|
126
126
|
import colorLib from '@kurkle/color';
|
|
@@ -4123,47 +4123,53 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
4123
4123
|
* @ignore
|
|
4124
4124
|
*/
|
|
4125
4125
|
class CommentItemComponent {
|
|
4126
|
-
constructor(translationSrvice, dialog) {
|
|
4126
|
+
constructor(translationSrvice, dialog, nuxeoDialogService) {
|
|
4127
4127
|
this.translationSrvice = translationSrvice;
|
|
4128
4128
|
this.dialog = dialog;
|
|
4129
|
+
this.nuxeoDialogService = nuxeoDialogService;
|
|
4129
4130
|
this.loaderType = 'scroll';
|
|
4130
4131
|
this.showCommentActions = true;
|
|
4131
4132
|
this.lang = 'en';
|
|
4132
4133
|
this.refreshCommentList = new EventEmitter();
|
|
4133
4134
|
}
|
|
4134
4135
|
ngOnInit() {
|
|
4135
|
-
console.log(
|
|
4136
|
+
console.log('comment comment', this.comment);
|
|
4136
4137
|
let date = new Date(this.comment.creationDate);
|
|
4137
4138
|
date.setSeconds(date.getSeconds() - 5);
|
|
4138
4139
|
this.comment.creationDate = date.toISOString();
|
|
4139
|
-
this.comment.Commenter.fullName =
|
|
4140
|
-
|
|
4140
|
+
this.comment.Commenter.fullName =
|
|
4141
|
+
this.comment.Commenter.properties.firstName +
|
|
4142
|
+
' ' +
|
|
4143
|
+
this.comment.Commenter.properties.lastName;
|
|
4144
|
+
this.langSubscription = this.translationSrvice.isArabic.subscribe((res) => {
|
|
4141
4145
|
this.lang = res ? 'ar' : 'en';
|
|
4142
4146
|
});
|
|
4143
4147
|
}
|
|
4144
4148
|
executeFunction(type) {
|
|
4145
4149
|
if (type === 'edit') {
|
|
4146
|
-
this.dialogRef = this.
|
|
4150
|
+
this.dialogRef = this.nuxeoDialogService.open({
|
|
4151
|
+
component: EditDeleteModalComponent,
|
|
4147
4152
|
width: '500px',
|
|
4148
4153
|
height: '220px',
|
|
4149
4154
|
panelClass: 'watcher-dialog-container',
|
|
4150
4155
|
data: {
|
|
4151
4156
|
type: 'edit',
|
|
4152
4157
|
comment: Object.assign({}, this.comment)
|
|
4153
|
-
}
|
|
4154
|
-
disableClose: true,
|
|
4158
|
+
}
|
|
4159
|
+
//disableClose: true,
|
|
4155
4160
|
});
|
|
4156
4161
|
}
|
|
4157
4162
|
else if (type === 'delete') {
|
|
4158
|
-
this.dialogRef = this.
|
|
4163
|
+
this.dialogRef = this.nuxeoDialogService.open({
|
|
4164
|
+
component: EditDeleteModalComponent,
|
|
4159
4165
|
width: '500px',
|
|
4160
4166
|
height: '150px',
|
|
4161
4167
|
panelClass: 'watcher-dialog-container',
|
|
4162
4168
|
data: {
|
|
4163
4169
|
type: 'delete',
|
|
4164
4170
|
comment: Object.assign({}, this.comment)
|
|
4165
|
-
}
|
|
4166
|
-
disableClose: true,
|
|
4171
|
+
}
|
|
4172
|
+
//disableClose: true,
|
|
4167
4173
|
});
|
|
4168
4174
|
}
|
|
4169
4175
|
this.dialogRef.afterClosed().subscribe((res) => {
|
|
@@ -4173,7 +4179,7 @@ class CommentItemComponent {
|
|
|
4173
4179
|
});
|
|
4174
4180
|
}
|
|
4175
4181
|
}
|
|
4176
|
-
CommentItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CommentItemComponent, deps: [{ token: TranslationService }, { token: i1$3.MatDialog }], target: i0.ɵɵFactoryTarget.Component });
|
|
4182
|
+
CommentItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CommentItemComponent, deps: [{ token: TranslationService }, { token: i1$3.MatDialog }, { token: NuxeoDialogService }], target: i0.ɵɵFactoryTarget.Component });
|
|
4177
4183
|
CommentItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CommentItemComponent, selector: "app-comment-item", inputs: { comment: "comment", loaderType: "loaderType", showCommentActions: "showCommentActions" }, outputs: { refreshCommentList: "refreshCommentList" }, ngImport: i0, template: "<div class=\"comment-item\" SetRtl>\r\n\r\n <div class=\"comment-controls\" *ngIf=\"showCommentActions\">\r\n <span class=\"bi bi-pencil contril-icon\" \r\n *permission=\"{name: 'updateComment', entity: comment}\"\r\n matTooltip=\"{{ 'BUTTONS.EDIT' | translate }}\"\r\n (click)=\"executeFunction('edit')\"\r\n ></span>\r\n\r\n <span class=\"bi bi-trash contril-icon\" \r\n *permission=\"{name: 'deleteComment', entity: comment}\"\r\n matTooltip=\"{{ 'BUTTONS.Delete' | translate }}\"\r\n (click)=\"executeFunction('delete')\"\r\n ></span>\r\n </div>\r\n\r\n <app-user-card [user]=\"comment.Commenter\" [diameter]=\"12\">\r\n <div class=\"lineOne\">\r\n {{lang === 'en' ? (comment.Commenter.fullName) : (comment.Commenter.fullNameAr ? comment.Commenter.fullNameAr : comment.Commenter.fullName)}}\r\n </div>\r\n <div class=\"lineOnePart2\">\r\n <span class=\"date\" matTooltip='{{ comment?.creationDate | localizedDate:\r\n \"fullDate\"}}' matTooltipClass=\"tdf-tooltip\" TooltipPosition='below'>\r\n <span class=\"date-sperator px-1\">|</span>{{ comment?.creationDate | timeAgo : lang }}</span>\r\n </div>\r\n <div class=\"lineTwo\">\r\n <app-read-more class=\"comment-text\" [text]=\"comment?.text\" [wordCount]=\"loaderType === 'scroll' ? 20 : 60\">\r\n </app-read-more>\r\n </div>\r\n </app-user-card>\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}.comment-item{border:1px solid #d9dce2;padding:8px 4px;display:flex;position:relative}.comment-item:hover{background:#f5f6f8}.comment-item .comment-controls{position:absolute;right:5px}.comment-item .comment-controls .contril-icon{padding:0 5px;cursor:pointer}.date{color:#3c3cf0}.comment-text{color:#8f98aa}.comment-avatar{align-items:top;padding:0 4px;display:flex}.comment-avatar .avatar{width:40px;height:40px;display:block}.rtl .comment-controls{left:5px;right:auto}\n"], components: [{ type: UserCardComponent, selector: "app-user-card", inputs: ["user", "diameter"] }, { type: ReadMoreComponent, selector: "app-read-more", inputs: ["text", "charCount", "wordCount", "lineBreaks"] }], directives: [{ type: SetRtlDirective, selector: "[SetRtl]" }, { type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: PermissionsDirective, selector: "[permission]", inputs: ["permission"] }, { type: i2$2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltipPosition", "matTooltipDisabled", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }], pipes: { "translate": i1.TranslatePipe, "localizedDate": LocalizedDatePipe, "timeAgo": TimeAgoPipe } });
|
|
4178
4184
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CommentItemComponent, decorators: [{
|
|
4179
4185
|
type: Component,
|
|
@@ -4182,7 +4188,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
4182
4188
|
templateUrl: './comment-item.component.html',
|
|
4183
4189
|
styleUrls: ['./comment-item.component.scss']
|
|
4184
4190
|
}]
|
|
4185
|
-
}], ctorParameters: function () { return [{ type: TranslationService }, { type: i1$3.MatDialog }]; }, propDecorators: { comment: [{
|
|
4191
|
+
}], ctorParameters: function () { return [{ type: TranslationService }, { type: i1$3.MatDialog }, { type: NuxeoDialogService }]; }, propDecorators: { comment: [{
|
|
4186
4192
|
type: Input
|
|
4187
4193
|
}], loaderType: [{
|
|
4188
4194
|
type: Input
|
|
@@ -5470,12 +5476,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
5470
5476
|
}] } });
|
|
5471
5477
|
|
|
5472
5478
|
class CorrespondenceRelationListComponent {
|
|
5473
|
-
constructor(relationsvc, dialog, viewerFilesService, documentsApi, adapter) {
|
|
5479
|
+
constructor(relationsvc, dialog, viewerFilesService, documentsApi, adapter, nuxeoDialogService) {
|
|
5474
5480
|
this.relationsvc = relationsvc;
|
|
5475
5481
|
this.dialog = dialog;
|
|
5476
5482
|
this.viewerFilesService = viewerFilesService;
|
|
5477
5483
|
this.documentsApi = documentsApi;
|
|
5478
5484
|
this.adapter = adapter;
|
|
5485
|
+
this.nuxeoDialogService = nuxeoDialogService;
|
|
5479
5486
|
this.reload = false;
|
|
5480
5487
|
this.relateddoc = [];
|
|
5481
5488
|
this.menu_actions = [
|
|
@@ -5508,30 +5515,24 @@ class CorrespondenceRelationListComponent {
|
|
|
5508
5515
|
let functionToPerform = () => {
|
|
5509
5516
|
return this.relationsvc.Delete_Named_Relation(this.correspondence_id, relateddoc.relationId, relateddoc.uid);
|
|
5510
5517
|
};
|
|
5511
|
-
|
|
5512
|
-
|
|
5513
|
-
|
|
5514
|
-
|
|
5515
|
-
|
|
5518
|
+
this.openDialog(functionToPerform);
|
|
5519
|
+
}
|
|
5520
|
+
openDialog(functionToPerform) {
|
|
5521
|
+
this.nuxeoDialogService.showConfirm({
|
|
5522
|
+
message: 'genericConfirm',
|
|
5523
|
+
actions: {
|
|
5524
|
+
confirm: {
|
|
5525
|
+
fn: () => {
|
|
5526
|
+
return functionToPerform().pipe(tap((data) => {
|
|
5527
|
+
if (data) {
|
|
5528
|
+
this.relationsvc.getUpdatedRelation.next();
|
|
5529
|
+
}
|
|
5530
|
+
}));
|
|
5531
|
+
}
|
|
5532
|
+
}
|
|
5516
5533
|
}
|
|
5517
5534
|
});
|
|
5518
5535
|
}
|
|
5519
|
-
openDialog(functionToPerform, title, msg) {
|
|
5520
|
-
return this.dialog
|
|
5521
|
-
.open(NdfConfirmationDialogComponent, {
|
|
5522
|
-
width: '400px',
|
|
5523
|
-
panelClass: 'relation-confirm-dialog',
|
|
5524
|
-
data: {
|
|
5525
|
-
title: 'genericConfirm',
|
|
5526
|
-
toastrTitle: title,
|
|
5527
|
-
toastrMsg: msg
|
|
5528
|
-
}
|
|
5529
|
-
})
|
|
5530
|
-
.afterClosed()
|
|
5531
|
-
.pipe(tap((res) => {
|
|
5532
|
-
functionToPerform();
|
|
5533
|
-
}));
|
|
5534
|
-
}
|
|
5535
5536
|
view_Corres(relation) {
|
|
5536
5537
|
let url = window.location.href;
|
|
5537
5538
|
window.open(url.replace(this.correspondence_id, relation.uid), '_blank');
|
|
@@ -5551,8 +5552,8 @@ class CorrespondenceRelationListComponent {
|
|
|
5551
5552
|
}
|
|
5552
5553
|
}
|
|
5553
5554
|
}
|
|
5554
|
-
CorrespondenceRelationListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CorrespondenceRelationListComponent, deps: [{ token: CorrespondenceRelationService }, { token: i1$3.MatDialog }, { token: ViewerFilesService }, { token: DocumentsService }, { token: AdapterService }], target: i0.ɵɵFactoryTarget.Component });
|
|
5555
|
-
CorrespondenceRelationListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CorrespondenceRelationListComponent, selector: "cts-correspondence-relation-list", inputs: { correspondence_id: "correspondence_id", reload: "reload" }, ngImport: i0, template: "<div class=\"relations-list\" *ngIf=\"relateddoc.length > 0\">\r\n <ng-container>\r\n <div *ngFor=\"let group of relateddoc; first as isFirst\">\r\n <mat-accordion class=\"example-headers-align\" multi>\r\n <mat-expansion-panel [expanded]=\"isFirst\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{('vocabulary.VOC_CorrespondenceRelationsNames.' + group[0]) | translate }}\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <ng-template matExpansionPanelContent>\r\n <mat-list>\r\n <div class=\"mat-list-items\" *ngFor=\"let item of group[1]\">\r\n <cts-item-list\r\n [item]=\"item\"\r\n [title]=\"item.title\"\r\n [iconname]=\"'link'\"\r\n [actions]=\"menu_actions\"\r\n (actionclicked)=\"handleMenuItemClicked($event)\"\r\n (itemClicked)=\"showCorrespondenceInViewer(item)\"\r\n [moreclasses]=\"'link-relation'\"\r\n ></cts-item-list>\r\n </div>\r\n </mat-list>\r\n </ng-template>\r\n </mat-expansion-panel>\r\n </mat-accordion>\r\n </div>\r\n </ng-container>\r\n</div>\r\n<div class=\"nocontent\" *ngIf=\"relateddoc.length === 0\">\r\n <p>{{ \"correspondence-relation.nocontent\" | translate }}</p>\r\n</div>\r\n", styles: [".relations-list{border:1px solid #eee}.relations-list .mat-expansion-panel{box-shadow:none!important}.relations-list .mat-expansion-panel-header{border-bottom:1px solid #d9dce2;background-color:#f5f6f8;height:50px!important}.relations-list .mat-expansion-panel-header:hover{background-color:#f5f6f8!important}.relations-list .mat-expansion-panel-header:focus{background-color:#f5f6f8!important}.relations-list .mat-expansion-panel-header-title{font-weight:500}.relations-list .mat-accordion .mat-expansion-panel{border-radius:0!important}.relations-list .mat-expansion-panel-body{padding:0!important}.nocontent{color:gray;padding:10px;font-size:14px;border:1px solid #d9dce2}.nocontent p{margin:0;text-align:center}\n"], components: [{ type:
|
|
5555
|
+
CorrespondenceRelationListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CorrespondenceRelationListComponent, deps: [{ token: CorrespondenceRelationService }, { token: i1$3.MatDialog }, { token: ViewerFilesService }, { token: DocumentsService }, { token: AdapterService }, { token: NuxeoDialogService }], target: i0.ɵɵFactoryTarget.Component });
|
|
5556
|
+
CorrespondenceRelationListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CorrespondenceRelationListComponent, selector: "cts-correspondence-relation-list", inputs: { correspondence_id: "correspondence_id", reload: "reload" }, ngImport: i0, template: "<div class=\"relations-list\" *ngIf=\"relateddoc.length > 0\">\r\n <ng-container>\r\n <div *ngFor=\"let group of relateddoc; first as isFirst\">\r\n <mat-accordion class=\"example-headers-align\" multi>\r\n <mat-expansion-panel [expanded]=\"isFirst\">\r\n <mat-expansion-panel-header>\r\n <mat-panel-title>\r\n {{('vocabulary.VOC_CorrespondenceRelationsNames.' + group[0]) | translate }}\r\n </mat-panel-title>\r\n </mat-expansion-panel-header>\r\n <ng-template matExpansionPanelContent>\r\n <mat-list>\r\n <div class=\"mat-list-items\" *ngFor=\"let item of group[1]\">\r\n <cts-item-list\r\n [item]=\"item\"\r\n [title]=\"item.title\"\r\n [iconname]=\"'link'\"\r\n [actions]=\"menu_actions\"\r\n (actionclicked)=\"handleMenuItemClicked($event)\"\r\n (itemClicked)=\"showCorrespondenceInViewer(item)\"\r\n [moreclasses]=\"'link-relation'\"\r\n ></cts-item-list>\r\n </div>\r\n </mat-list>\r\n </ng-template>\r\n </mat-expansion-panel>\r\n </mat-accordion>\r\n </div>\r\n </ng-container>\r\n</div>\r\n<div class=\"nocontent\" *ngIf=\"relateddoc.length === 0\">\r\n <p>{{ \"correspondence-relation.nocontent\" | translate }}</p>\r\n</div>\r\n", styles: [".relations-list{border:1px solid #eee}.relations-list .mat-expansion-panel{box-shadow:none!important}.relations-list .mat-expansion-panel-header{border-bottom:1px solid #d9dce2;background-color:#f5f6f8;height:50px!important}.relations-list .mat-expansion-panel-header:hover{background-color:#f5f6f8!important}.relations-list .mat-expansion-panel-header:focus{background-color:#f5f6f8!important}.relations-list .mat-expansion-panel-header-title{font-weight:500}.relations-list .mat-accordion .mat-expansion-panel{border-radius:0!important}.relations-list .mat-expansion-panel-body{padding:0!important}.nocontent{color:gray;padding:10px;font-size:14px;border:1px solid #d9dce2}.nocontent p{margin:0;text-align:center}\n"], components: [{ type: i7$1.MatExpansionPanel, selector: "mat-expansion-panel", inputs: ["disabled", "expanded", "hideToggle", "togglePosition"], outputs: ["opened", "closed", "expandedChange", "afterExpand", "afterCollapse"], exportAs: ["matExpansionPanel"] }, { type: i7$1.MatExpansionPanelHeader, selector: "mat-expansion-panel-header", inputs: ["expandedHeight", "collapsedHeight"] }, { type: i2$4.MatList, selector: "mat-list, mat-action-list", inputs: ["disableRipple", "disabled"], exportAs: ["matList"] }, { type: ItemListComponent, selector: "cts-item-list", inputs: ["item", "iconname", "title", "actions", "isselected", "moreclasses"], outputs: ["itemClicked", "actionclicked"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i7$1.MatAccordion, selector: "mat-accordion", inputs: ["multi", "displayMode", "togglePosition", "hideToggle"], exportAs: ["matAccordion"] }, { type: i7$1.MatExpansionPanelTitle, selector: "mat-panel-title" }, { type: i7$1.MatExpansionPanelContent, selector: "ng-template[matExpansionPanelContent]" }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
5556
5557
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CorrespondenceRelationListComponent, decorators: [{
|
|
5557
5558
|
type: Component,
|
|
5558
5559
|
args: [{
|
|
@@ -5561,14 +5562,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
5561
5562
|
styleUrls: ['./correspondence-relation-list.component.scss'],
|
|
5562
5563
|
encapsulation: ViewEncapsulation.None
|
|
5563
5564
|
}]
|
|
5564
|
-
}], ctorParameters: function () { return [{ type: CorrespondenceRelationService }, { type: i1$3.MatDialog }, { type: ViewerFilesService }, { type: DocumentsService }, { type: AdapterService }]; }, propDecorators: { correspondence_id: [{
|
|
5565
|
+
}], ctorParameters: function () { return [{ type: CorrespondenceRelationService }, { type: i1$3.MatDialog }, { type: ViewerFilesService }, { type: DocumentsService }, { type: AdapterService }, { type: NuxeoDialogService }]; }, propDecorators: { correspondence_id: [{
|
|
5565
5566
|
type: Input
|
|
5566
5567
|
}], reload: [{
|
|
5567
5568
|
type: Input
|
|
5568
5569
|
}] } });
|
|
5569
5570
|
|
|
5570
5571
|
class CorrespondenceRelationComponent {
|
|
5571
|
-
constructor(dialog, corrrelationsvc, toastr, viewerFilesService, documentsApi, userPreference, nuxeoService) {
|
|
5572
|
+
constructor(dialog, corrrelationsvc, toastr, viewerFilesService, documentsApi, userPreference, nuxeoService, nuxeoDialogService) {
|
|
5572
5573
|
this.dialog = dialog;
|
|
5573
5574
|
this.corrrelationsvc = corrrelationsvc;
|
|
5574
5575
|
this.toastr = toastr;
|
|
@@ -5576,6 +5577,7 @@ class CorrespondenceRelationComponent {
|
|
|
5576
5577
|
this.documentsApi = documentsApi;
|
|
5577
5578
|
this.userPreference = userPreference;
|
|
5578
5579
|
this.nuxeoService = nuxeoService;
|
|
5580
|
+
this.nuxeoDialogService = nuxeoDialogService;
|
|
5579
5581
|
this.reload = false;
|
|
5580
5582
|
}
|
|
5581
5583
|
ngOnInit() {
|
|
@@ -5654,36 +5656,30 @@ class CorrespondenceRelationComponent {
|
|
|
5654
5656
|
this.viewerFilesService.updateViewer.next(file);
|
|
5655
5657
|
});
|
|
5656
5658
|
}
|
|
5657
|
-
openConfirmDialog(functionToPerform
|
|
5658
|
-
|
|
5659
|
-
|
|
5660
|
-
|
|
5661
|
-
|
|
5662
|
-
|
|
5663
|
-
|
|
5664
|
-
|
|
5665
|
-
|
|
5659
|
+
openConfirmDialog(functionToPerform) {
|
|
5660
|
+
this.nuxeoDialogService.showConfirm({
|
|
5661
|
+
message: 'genericConfirm',
|
|
5662
|
+
actions: {
|
|
5663
|
+
confirm: {
|
|
5664
|
+
fn: () => {
|
|
5665
|
+
return functionToPerform().pipe(tap((data) => {
|
|
5666
|
+
if (data) {
|
|
5667
|
+
this.corrrelationsvc.getUpdatedRelation.next();
|
|
5668
|
+
}
|
|
5669
|
+
}));
|
|
5670
|
+
}
|
|
5671
|
+
}
|
|
5666
5672
|
}
|
|
5667
|
-
})
|
|
5668
|
-
.afterClosed()
|
|
5669
|
-
.pipe(tap((res) => {
|
|
5670
|
-
functionToPerform();
|
|
5671
|
-
}));
|
|
5673
|
+
});
|
|
5672
5674
|
}
|
|
5673
5675
|
deleteRelation(relateddoc) {
|
|
5674
5676
|
let functionToPerform = () => {
|
|
5675
5677
|
return this.corrrelationsvc.Delete_Named_Relation(this.corr_id, relateddoc.relationId, relateddoc.uid);
|
|
5676
5678
|
};
|
|
5677
|
-
|
|
5678
|
-
let msg = '';
|
|
5679
|
-
this.openConfirmDialog(functionToPerform, 'Success', 'correspondence-relation.deleted_success').subscribe((data) => {
|
|
5680
|
-
if (data) {
|
|
5681
|
-
this.corrrelationsvc.getUpdatedRelation.next();
|
|
5682
|
-
}
|
|
5683
|
-
});
|
|
5679
|
+
this.openConfirmDialog(functionToPerform);
|
|
5684
5680
|
}
|
|
5685
5681
|
}
|
|
5686
|
-
CorrespondenceRelationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CorrespondenceRelationComponent, deps: [{ token: i1$3.MatDialog }, { token: CorrespondenceRelationService }, { token: CustomToastrService }, { token: ViewerFilesService }, { token: DocumentsService }, { token: UserPreferencesService }, { token: NuxeoService }], target: i0.ɵɵFactoryTarget.Component });
|
|
5682
|
+
CorrespondenceRelationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CorrespondenceRelationComponent, deps: [{ token: i1$3.MatDialog }, { token: CorrespondenceRelationService }, { token: CustomToastrService }, { token: ViewerFilesService }, { token: DocumentsService }, { token: UserPreferencesService }, { token: NuxeoService }, { token: NuxeoDialogService }], target: i0.ɵɵFactoryTarget.Component });
|
|
5687
5683
|
CorrespondenceRelationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CorrespondenceRelationComponent, selector: "cts-correspondence-relation", inputs: { corr_id: "corr_id", correspondance: "correspondance" }, ngImport: i0, template: "<div class=\"relations-container\">\r\n <div class=\"mb-3 relations-reply\">\r\n <div class=\"subheader\">\r\n <div>{{ \"correspondence-relation.reply_relation\" | translate }}</div>\r\n </div>\r\n <cts-correspondence-relation-reply\r\n [correspondence_id]=\"corr_id\"\r\n (actionclicked)=\"handleActions($event)\"\r\n ></cts-correspondence-relation-reply>\r\n </div>\r\n\r\n <div class=\"mb-2 relations-listing\">\r\n <div class=\"subheader\">\r\n <div>{{ \"correspondence-relation.title\" | translate }}</div>\r\n <div class=\"\" *permission=\"{\r\n name: 'AddRelatedCorrespondence',\r\n entity: correspondance , user: nuxeoService.nuxeoClient.user\r\n }\" (click)=\"openDialog()\"><mat-icon>add</mat-icon></div>\r\n </div>\r\n <cts-correspondence-relation-list\r\n [correspondence_id]=\"corr_id\"\r\n [reload]=\"reload\"\r\n ></cts-correspondence-relation-list>\r\n </div>\r\n\r\n\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}.relations-container .subheader{padding:10px 0 0;display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:bold}.relations-container .subheader mat-icon{font-size:25px;cursor:pointer;color:#465573}.relations-container .relations-title{display:flex;justify-content:space-between;align-items:center}.relations-container .relations-title a{font-size:30px;color:#789}.relations-container .relations-list{border:1px solid #00000026}.relations-container .relations-list .relation-item{display:flex;justify-content:space-between;align-items:center}\n"], components: [{ type: CorrespondenceRelationReplyComponent, selector: "cts-correspondence-relation-reply", inputs: ["correspondence_id"], outputs: ["actionclicked"] }, { type: i2$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: CorrespondenceRelationListComponent, selector: "cts-correspondence-relation-list", inputs: ["correspondence_id", "reload"] }], directives: [{ type: PermissionsDirective, selector: "[permission]", inputs: ["permission"] }], pipes: { "translate": i1.TranslatePipe } });
|
|
5688
5684
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CorrespondenceRelationComponent, decorators: [{
|
|
5689
5685
|
type: Component,
|
|
@@ -5692,7 +5688,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
5692
5688
|
templateUrl: './correspondence-relation.component.html',
|
|
5693
5689
|
styleUrls: ['./correspondence-relation.component.scss']
|
|
5694
5690
|
}]
|
|
5695
|
-
}], ctorParameters: function () { return [{ type: i1$3.MatDialog }, { type: CorrespondenceRelationService }, { type: CustomToastrService }, { type: ViewerFilesService }, { type: DocumentsService }, { type: UserPreferencesService }, { type: NuxeoService }]; }, propDecorators: { corr_id: [{
|
|
5691
|
+
}], ctorParameters: function () { return [{ type: i1$3.MatDialog }, { type: CorrespondenceRelationService }, { type: CustomToastrService }, { type: ViewerFilesService }, { type: DocumentsService }, { type: UserPreferencesService }, { type: NuxeoService }, { type: NuxeoDialogService }]; }, propDecorators: { corr_id: [{
|
|
5696
5692
|
type: Input
|
|
5697
5693
|
}], correspondance: [{
|
|
5698
5694
|
type: Input
|
|
@@ -6611,7 +6607,7 @@ class DynamicFormBoolItemComponent {
|
|
|
6611
6607
|
}
|
|
6612
6608
|
}
|
|
6613
6609
|
DynamicFormBoolItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicFormBoolItemComponent, deps: [{ token: DynamicFormUpdateService }, { token: i1.TranslateService }], target: i0.ɵɵFactoryTarget.Component });
|
|
6614
|
-
DynamicFormBoolItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicFormBoolItemComponent, selector: "app-dynamic-form-boolitem", inputs: { property: "property", editable: "editable" }, ngImport: i0, template: "<ng-container *ngIf=\"!property.isEmpty() || isEditable()\">\r\n <div class=\"row gap\">\r\n\r\n <label class=\"col-sm-3\" for=\"formGroupInputSmall\">{{\r\n property.label | translate\r\n }}<span *ngIf=\"property.mandatory\" class=\"text-danger\">*</span></label>\r\n <div class=\"col-sm-9\">\r\n <mat-checkbox [required]=\"property.mandatory\" [attr.data-automation-id]=\"'card-boolean-' + property.key\"\r\n [attr.title]=\"'CORE.METADATA.ACTIONS.TOGGLE' | translate\" [checked]=\"property.displayValue\"\r\n [disabled]=\"!isEditable()\" (change)=\"changed($event)\">\r\n </mat-checkbox>\r\n </div>\r\n </div>\r\n</ng-container>\r\n", styles: [""], components: [{ type: i7$
|
|
6610
|
+
DynamicFormBoolItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicFormBoolItemComponent, selector: "app-dynamic-form-boolitem", inputs: { property: "property", editable: "editable" }, ngImport: i0, template: "<ng-container *ngIf=\"!property.isEmpty() || isEditable()\">\r\n <div class=\"row gap\">\r\n\r\n <label class=\"col-sm-3\" for=\"formGroupInputSmall\">{{\r\n property.label | translate\r\n }}<span *ngIf=\"property.mandatory\" class=\"text-danger\">*</span></label>\r\n <div class=\"col-sm-9\">\r\n <mat-checkbox [required]=\"property.mandatory\" [attr.data-automation-id]=\"'card-boolean-' + property.key\"\r\n [attr.title]=\"'CORE.METADATA.ACTIONS.TOGGLE' | translate\" [checked]=\"property.displayValue\"\r\n [disabled]=\"!isEditable()\" (change)=\"changed($event)\">\r\n </mat-checkbox>\r\n </div>\r\n </div>\r\n</ng-container>\r\n", styles: [""], components: [{ type: i7$2.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i1.TranslatePipe } });
|
|
6615
6611
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicFormBoolItemComponent, decorators: [{
|
|
6616
6612
|
type: Component,
|
|
6617
6613
|
args: [{
|
|
@@ -7765,7 +7761,7 @@ class DynamicFormDateItemComponent {
|
|
|
7765
7761
|
DynamicFormDateItemComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicFormDateItemComponent, deps: [{ token: DynamicFormUpdateService }, { token: i2$5.DateAdapter }, { token: UserPreferencesService }, { token: i1.TranslateService }, { token: i2$6.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
7766
7762
|
DynamicFormDateItemComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicFormDateItemComponent, selector: "app-dynamic-form-dateitem", inputs: { label: "label", disabled: "disabled", property: "property", editable: "editable", displayEmpty: "displayEmpty", min: "min", max: "max", startAt: "startAt", displayClearAction: "displayClearAction", pickerType: "pickerType", selectMode: "selectMode", isfilter: "isfilter", placeholder: "placeholder" }, providers: [
|
|
7767
7763
|
{ provide: OWL_DATE_TIME_FORMATS, useValue: MY_MOMENT_FORMATS }
|
|
7768
|
-
], viewQueries: [{ propertyName: "datepicker", first: true, predicate: ["datetimePicker"], descendants: true }], ngImport: i0, template: "<div class=\"app-property-value\">\r\n <div class=\"app-input-wrapper\">\r\n <ng-container *ngIf=\"label\">\r\n <label class=\"\" for=\"formGroupInputSmall\"\r\n >{{ label | translate\r\n }}<span *ngIf=\"isRequired()\" class=\"text-danger m-1\">*</span>\r\n </label>\r\n </ng-container>\r\n <div class=\"input-container\">\r\n <ng-container *ngIf=\"isEditable(); else readOnly\">\r\n\r\n <button *ngIf=\"!isfilter && pickerType !== 'timer'\" type=\"button\" class=\"claendar-icon\" [owlDateTimeTrigger]=\"dt3\">\r\n <i class=\"bi bi-calendar-week icon\"></i> </button>\r\n\r\n <button *ngIf=\"!isfilter && pickerType === 'timer'\" type=\"button\" class=\"claendar-icon\" [owlDateTimeTrigger]=\"dt3\">\r\n <i class=\"bi bi-clock icon\"></i> </button>\r\n <input\r\n class=\"form-control date\"\r\n [disabled]=\"isDisabled() || null\"\r\n (blur)=\"onTouched($event)\"\r\n [min]=\"min\"\r\n [max]=\"max\"\r\n [selectMode]=\"selectMode\"\r\n [required]=\"isRequired\"\r\n [(ngModel)]=\"valueDate\"\r\n (ngModelChange)=\"onDateChanged($event)\"\r\n autocomplete=\"false\"\r\n [owlDateTimeTrigger]=\"dt3\"\r\n [owlDateTime]=\"dt3\"\r\n placeholder=\"{{ placeholder }}\"\r\n />\r\n <input\r\n class=\"form-control timer\"\r\n [disabled]=\"true\"\r\n [required]=\"isRequired\"\r\n [(ngModel)]=\"displayedTime\"\r\n placeholder=\"{{ placeholder }}\"\r\n />\r\n\r\n <button type=\"button\" *ngIf=\"valueDate\" (click)=\"onDateClear()\" class=\"relative mx-1 clear-date-btn\"\r\n [ngClass]=\"{'d-none': isDisabled()}\">\r\n <i class=\"clear-date-icon material-icons flex mr-1\"></i>\r\n </button>\r\n <owl-date-time\r\n [startAt]=\"startAt\"\r\n [pickerType]=\"pickerType\"\r\n #dt3\r\n ></owl-date-time>\r\n\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 <span *ngIf=\"label\" class=\"mx-1\">{{ label | translate}}</span> {{ \"VALIDATORS.REQUIRED\" | translate }}\r\n </li>\r\n </ul>\r\n </mat-error>\r\n </ng-container>\r\n <ng-template #readOnly>\r\n {{ valueDate | date }}\r\n </ng-template>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".clear-date-icon{color:#999;font-size:15px}.input-container{position:relative}.input-container .form-control{padding:0 35px}.clear-date-btn{align-items:center;background:transparent;border:0px;position:absolute;right:10px;left:auto;top:50%;margin-top:-9px}.claendar-icon{border:none;background-color:transparent;position:absolute;display:flex;justify-content:flex-start;padding-inline-end:45px;width:100%;height:40px;align-items:center}.claendar-icon .icon{font-size:20px;color:#495057}.claendar-icon:focus{outline:none}.rtl .clear-date-btn{left:10px;right:auto}.rtl .owl-dt-container-info{direction:rtl}\n"], components: [{ type: i6$
|
|
7764
|
+
], viewQueries: [{ propertyName: "datepicker", first: true, predicate: ["datetimePicker"], descendants: true }], ngImport: i0, template: "<div class=\"app-property-value\">\r\n <div class=\"app-input-wrapper\">\r\n <ng-container *ngIf=\"label\">\r\n <label class=\"\" for=\"formGroupInputSmall\"\r\n >{{ label | translate\r\n }}<span *ngIf=\"isRequired()\" class=\"text-danger m-1\">*</span>\r\n </label>\r\n </ng-container>\r\n <div class=\"input-container\">\r\n <ng-container *ngIf=\"isEditable(); else readOnly\">\r\n\r\n <button *ngIf=\"!isfilter && pickerType !== 'timer'\" type=\"button\" class=\"claendar-icon\" [owlDateTimeTrigger]=\"dt3\">\r\n <i class=\"bi bi-calendar-week icon\"></i> </button>\r\n\r\n <button *ngIf=\"!isfilter && pickerType === 'timer'\" type=\"button\" class=\"claendar-icon\" [owlDateTimeTrigger]=\"dt3\">\r\n <i class=\"bi bi-clock icon\"></i> </button>\r\n <input\r\n class=\"form-control date\"\r\n [disabled]=\"isDisabled() || null\"\r\n (blur)=\"onTouched($event)\"\r\n [min]=\"min\"\r\n [max]=\"max\"\r\n [selectMode]=\"selectMode\"\r\n [required]=\"isRequired\"\r\n [(ngModel)]=\"valueDate\"\r\n (ngModelChange)=\"onDateChanged($event)\"\r\n autocomplete=\"false\"\r\n [owlDateTimeTrigger]=\"dt3\"\r\n [owlDateTime]=\"dt3\"\r\n placeholder=\"{{ placeholder }}\"\r\n />\r\n <input\r\n class=\"form-control timer\"\r\n [disabled]=\"true\"\r\n [required]=\"isRequired\"\r\n [(ngModel)]=\"displayedTime\"\r\n placeholder=\"{{ placeholder }}\"\r\n />\r\n\r\n <button type=\"button\" *ngIf=\"valueDate\" (click)=\"onDateClear()\" class=\"relative mx-1 clear-date-btn\"\r\n [ngClass]=\"{'d-none': isDisabled()}\">\r\n <i class=\"clear-date-icon material-icons flex mr-1\"></i>\r\n </button>\r\n <owl-date-time\r\n [startAt]=\"startAt\"\r\n [pickerType]=\"pickerType\"\r\n #dt3\r\n ></owl-date-time>\r\n\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 <span *ngIf=\"label\" class=\"mx-1\">{{ label | translate}}</span> {{ \"VALIDATORS.REQUIRED\" | translate }}\r\n </li>\r\n </ul>\r\n </mat-error>\r\n </ng-container>\r\n <ng-template #readOnly>\r\n {{ valueDate | date }}\r\n </ng-template>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".clear-date-icon{color:#999;font-size:15px}.input-container{position:relative}.input-container .form-control{padding:0 35px}.clear-date-btn{align-items:center;background:transparent;border:0px;position:absolute;right:10px;left:auto;top:50%;margin-top:-9px}.claendar-icon{border:none;background-color:transparent;position:absolute;display:flex;justify-content:flex-start;padding-inline-end:45px;width:100%;height:40px;align-items:center}.claendar-icon .icon{font-size:20px;color:#495057}.claendar-icon:focus{outline:none}.rtl .clear-date-btn{left:10px;right:auto}.rtl .owl-dt-container-info{direction:rtl}\n"], components: [{ type: i6$1.OwlDateTimeComponent, selector: "owl-date-time", inputs: ["backdropClass", "panelClass", "startAt", "pickerType", "pickerMode", "disabled", "opened", "scrollStrategy"], outputs: ["afterPickerClosed", "afterPickerOpen", "yearSelected", "monthSelected"], exportAs: ["owlDateTime"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i6$1.OwlDateTimeTriggerDirective, selector: "[owlDateTimeTrigger]", inputs: ["disabled", "owlDateTimeTrigger"] }, { type: i2$6.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { type: i6$1.OwlDateTimeInputDirective, selector: "input[owlDateTime]", inputs: ["rangeSeparator", "value", "owlDateTime", "owlDateTimeFilter", "_disabled", "min", "max", "selectMode", "values"], outputs: ["dateTimeChange", "dateTimeInput"], exportAs: ["owlDateTimeInput"] }, { type: i2$6.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i2$6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i4$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i6.MatError, selector: "mat-error", inputs: ["id"] }], pipes: { "translate": i1.TranslatePipe, "date": i4$1.DatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
7769
7765
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicFormDateItemComponent, decorators: [{
|
|
7770
7766
|
type: Component,
|
|
7771
7767
|
args: [{
|
|
@@ -7875,14 +7871,14 @@ class owlDateTimeIntl extends OwlDateTimeIntl {
|
|
|
7875
7871
|
});
|
|
7876
7872
|
}
|
|
7877
7873
|
}
|
|
7878
|
-
owlDateTimeIntl.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: owlDateTimeIntl, deps: [{ token: i1.TranslateService }, { token: UserPreferencesService }, { token: i6$
|
|
7874
|
+
owlDateTimeIntl.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: owlDateTimeIntl, deps: [{ token: i1.TranslateService }, { token: UserPreferencesService }, { token: i6$1.DateTimeAdapter }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
7879
7875
|
owlDateTimeIntl.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: owlDateTimeIntl, providedIn: 'root' });
|
|
7880
7876
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: owlDateTimeIntl, decorators: [{
|
|
7881
7877
|
type: Injectable,
|
|
7882
7878
|
args: [{
|
|
7883
7879
|
providedIn: 'root',
|
|
7884
7880
|
}]
|
|
7885
|
-
}], ctorParameters: function () { return [{ type: i1.TranslateService }, { type: UserPreferencesService }, { type: i6$
|
|
7881
|
+
}], ctorParameters: function () { return [{ type: i1.TranslateService }, { type: UserPreferencesService }, { type: i6$1.DateTimeAdapter }]; } });
|
|
7886
7882
|
|
|
7887
7883
|
class DepartmentConstants {
|
|
7888
7884
|
}
|
|
@@ -9075,7 +9071,7 @@ class TreeviewSelectComponent {
|
|
|
9075
9071
|
}
|
|
9076
9072
|
}
|
|
9077
9073
|
TreeviewSelectComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TreeviewSelectComponent, deps: [{ token: i1$7.TreeviewI18n }, { token: TranslationService }, { token: DepartmentApiService }, { token: DepartmentManagementService$1 }, { token: RolesService }, { token: NuxeoService }, { token: GlobalAdminService }], target: i0.ɵɵFactoryTarget.Component });
|
|
9078
|
-
TreeviewSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TreeviewSelectComponent, selector: "app-dynamic-form-treeview-select", inputs: { treeview: "treeview", treeViewAsFormControl: "treeViewAsFormControl", config: "config", items: "items", value: "value", multiple: "multiple", defaultSelect: "defaultSelect", pp_departmentNestedTree: "pp_departmentNestedTree", useCustomAddEditAction: "useCustomAddEditAction", customPrefix: "customPrefix", customParentProperty: "customParentProperty", placeholder: "placeholder", defaultSelection: "defaultSelection", displayDepTypee: "displayDepTypee", disabled: "disabled", displayIsAllowRecExternal: "displayIsAllowRecExternal" }, outputs: { valueChange: "valueChange", plusClicked: "plusClicked", actionClicked: "actionClicked" }, providers: [{ provide: TreeviewI18n, useClass: DropdownTreeviewSelectI18n }], viewQueries: [{ propertyName: "dropdownTreeviewComponent", first: true, predicate: DropdownTreeviewComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-template #itemTemplate let-item=\"item\" let-onCollapseExpand=\"onCollapseExpand\"\r\n let-onCheckedChange=\"onCheckedChange\">\r\n <!-- single -->\r\n <div *ngIf=\"!treeview && !multiple\">\r\n <div class=\"text-nowrap row-item\" [ngClass]=\"{ active: item.value === this.value }\">\r\n <i *ngIf=\"item.children\" (click)=\"onCollapseExpand()\" aria-hidden=\"true\" [ngSwitch]=\"item.collapsed\">\r\n <span *ngSwitchCase=\"true\" class=\"bi bi-caret-{{ arabic ? 'left' : 'right' }}-fill caret-icon\"></span>\r\n <span *ngSwitchCase=\"false\" class=\"bi bi-caret-down-fill caret-icon\"></span>\r\n </i>\r\n <!-- <label class=\"form-check-label\" (click)=\"select(item)\">{{\r\n item.text\r\n }}</label> -->\r\n <label *ngIf=\"item.disabled\" class=\"form-check-label\">{{\r\n item.text\r\n }}</label>\r\n <label *ngIf=\"!item.disabled\" class=\"form-check-label\" (click)=\"select(item)\">{{\r\n item.text\r\n }}</label>\r\n </div>\r\n </div>\r\n <!-- Multiple -->\r\n <div *ngIf=\"!treeview && multiple\">\r\n <div class=\"text-nowrap row-item\" [ngClass]=\"{ active: item.value === this.value }\">\r\n <i *ngIf=\"item.children\" (click)=\"onCollapseExpand()\" aria-hidden=\"true\" [ngSwitch]=\"item.collapsed\">\r\n <span *ngSwitchCase=\"true\" class=\"bi bi-caret-{{ arabic ? 'left' : 'right' }}-fill caret-icon\"></span>\r\n <span *ngSwitchCase=\"false\" class=\"bi bi-caret-down-fill caret-icon\"></span>\r\n </i>\r\n <!-- <input\r\n class=\"multiple-checkBox\"\r\n type=\"checkbox\"\r\n [checked]=\"multipleSelection.includes(item.value)\"\r\n (change)=\"selectMultiple($event.target.checked, item)\"\r\n />\r\n\r\n <label class=\"form-check-label\">{{ item.text }}</label> -->\r\n <div class=\"multiple-treeview\">\r\n <mat-checkbox [checked]=\"isItemSelected(item)\" (change)=\"selectMultiple($event.checked, item)\">\r\n <span> {{ item.text }} </span>\r\n </mat-checkbox>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- treeView -->\r\n <div *ngIf=\"treeview && !treeViewAsFormControl\" class=\"tree-view-container\">\r\n <div (mouseenter)=\"hoverField.style.display = 'flex'\" (mouseleave)=\"hoverField.style.display = 'none'\"\r\n class=\"text-nowrap row-item treeview-row\" [ngClass]=\"{ selected: item.value == selectedItem }\">\r\n <i *ngIf=\"item.children\" (click)=\"onCollapsed(item)\" aria-hidden=\"true\" [ngSwitch]=\"item.collapsed\">\r\n <span *ngSwitchCase=\"true\" class=\"bi bi-caret-{{ arabic ? 'left' : 'right' }}-fill caret-icon\"></span>\r\n\r\n <span *ngSwitchCase=\"false\" class=\"bi bi-caret-down-fill caret-icon\"></span>\r\n </i>\r\n <label class=\"form-check-label-treeview\" (click)=\"select(item)\">{{ item.text }}\r\n <span #hoverField class=\"hoverField\">\r\n <span type=\"button\" matTooltip=\"{{ 'department_management.form.edit' | translate }}\"\r\n (click)=\"onAction($event, 'update', item)\">\r\n <li class=\"bi bi-pencil\"></li>\r\n </span>\r\n\r\n <span type=\"button\" matTooltip=\"{{\r\n 'department_management.form.toolTip_message' | translate\r\n }}\" (click)=\"onAction($event, 'add', item)\">\r\n <li class=\"bi bi-plus\"></li>\r\n </span>\r\n </span>\r\n </label>\r\n </div>\r\n </div>\r\n <!-- treeView as form control -->\r\n <div *ngIf=\"treeview && treeViewAsFormControl\" class=\"tree-view-container\">\r\n <div class=\"text-nowrap row-item treeview-row-form-control\"\r\n [ngClass]=\"{ 'selected-form-control': item.value == selectedItem }\">\r\n <i *ngIf=\"item.children\" (click)=\"onCollapsed(item)\" aria-hidden=\"true\" [ngSwitch]=\"item.collapsed\">\r\n <span *ngSwitchCase=\"true\" class=\"bi bi-caret-{{ arabic ? 'left' : 'right' }}-fill caret-icon\"></span>\r\n\r\n <span *ngSwitchCase=\"false\" class=\"bi bi-caret-down-fill caret-icon\"></span>\r\n </i>\r\n <label class=\"form-check-label-treeview\" (click)=\"select(item)\">{{ item.text }}\r\n </label>\r\n </div>\r\n </div>\r\n</ng-template>\r\n<ng-template #headerTemplate let-config=\"config\" let-item=\"item\" let-onCollapseExpand=\"onCollapseExpand\"\r\n let-onCheckedChange=\"onCheckedChange\" let-onFilterTextChange=\"onFilterTextChange\">\r\n <div *ngIf=\"config.hasFilter\" class=\"row row-filter\">\r\n <div class=\"col-12\">\r\n <input class=\"form-control\" type=\"text\" [placeholder]=\"i18n.getFilterPlaceholder(placeholder)\"\r\n [(ngModel)]=\"filterText\" (ngModelChange)=\"onFilterTextChange($event)\" />\r\n </div>\r\n </div>\r\n <div *ngIf=\"config.hasAllCheckBox || config.hasCollapseExpand\" class=\"row\">\r\n <div class=\"col-12\">\r\n <label *ngIf=\"config.hasAllCheckBox\" (click)=\"select(item)\">\r\n <strong>{{ i18n.getAllCheckboxText() }}</strong>\r\n </label>\r\n <label *ngIf=\"config.hasCollapseExpand\" class=\"float-right\" (click)=\"onCollapseExpand()\">\r\n <i [title]=\"i18n.getTooltipCollapseExpandText(item.collapsed)\" aria-hidden=\"true\" [ngSwitch]=\"item.collapsed\">\r\n <span *ngSwitchCase=\"true\" class=\"bi bi-arrows-angle-expand\"></span>\r\n <span *ngSwitchCase=\"false\" class=\"bi bi-arrows-angle-contract\"></span>\r\n </i>\r\n </label>\r\n </div>\r\n </div>\r\n <a *ngIf=\"defaultSelect\" class=\"select-default\" (click)=\"selectDefault()\">{{'department_management.selectDefault'|\r\n translate}}</a>\r\n <div *ngIf=\"config.hasDivider\" class=\"dropdown-divider\" [ngClass]=\"{'dropdown-divider-noMargin': defaultSelect}\">\r\n </div>\r\n</ng-template>\r\n\r\n<ng-container *ngIf=\"!treeview && !multiple\">\r\n <div class=\"dropdown-wrapper\">\r\n <ngx-dropdown-treeview [config]=\"config\" [headerTemplate]=\"headerTemplate\" [items]=\"items\"\r\n [itemTemplate]=\"itemTemplate\">\r\n </ngx-dropdown-treeview>\r\n <div class=\"disable-effect\" *ngIf=\"disabled\"></div>\r\n </div>\r\n</ng-container>\r\n<ng-container *ngIf=\"!treeview && multiple\">\r\n <div class=\"multiple-tree-view dropdown-wrapper\">\r\n <ngx-dropdown-treeview [config]=\"config\" [items]=\"items\" [itemTemplate]=\"itemTemplate\">\r\n </ngx-dropdown-treeview>\r\n <div class=\"disable-effect\" *ngIf=\"disabled\"></div>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"treeview && !treeViewAsFormControl\">\r\n <div class=\"tree-view\">\r\n <ngx-treeview [config]=\"config\" [headerTemplate]=\"headerTemplate\" [items]=\"items\" [itemTemplate]=\"itemTemplate\">\r\n </ngx-treeview>\r\n </div>\r\n</ng-container>\r\n<ng-container *ngIf=\"treeview && treeViewAsFormControl\">\r\n <div class=\"tree-view-form-control\">\r\n <ngx-treeview [config]=\"config\" [headerTemplate]=\"headerTemplate\" [items]=\"items\" [itemTemplate]=\"itemTemplate\">\r\n </ngx-treeview>\r\n </div>\r\n</ng-container>", 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}.caret-icon{color:#6c757d;font-size:14px}.dropdown-wrapper{position:relative}.dropdown-wrapper .disable-effect{position:absolute;top:0;bottom:0;left:0;right:0;z-index:99}.multiple-treeview .mat-checkbox-ripple .mat-ripple-element,.multiple-treeview .mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#33e3b7!important}.multiple-treeview .mat-checkbox-ripple .mat-ripple-element{position:fixed;left:inherit;top:inherit;transform:translate(-3px,-3px)!important}.multiple-treeview mat-checkbox .mat-checkbox-background{background-color:#d9dce2!important}.form-check-label-treeview{display:flex;align-items:center;justify-content:space-between;width:100%}.form-check-label-treeview .hoverField{display:none;align-items:center;text-align:center}.form-check-label-treeview .hoverField span{display:flex;align-items:center;justify-content:center;margin:0 3px;border:none;background-color:snow;background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:30px;width:30px;color:#fff;border-radius:5px;list-style:none;margin-inline-end:4px}.form-check-label-treeview .hoverField span .bi-plus{font-size:28px;display:flex;justify-content:center}.form-check-label-treeview .hoverField .add-btn{width:164px;padding:1px;display:flex;justify-content:center;align-items:center;font-size:13px;background-color:#0dbab5;border-radius:5px;border:0;color:#fff;--tw-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.form-check-label-treeview .hoverField .plus-btn{display:flex;font-size:28px;align-items:center}.selected{background-color:#f5f6f8}.selected .hoverField{display:flex!important}.selected-form-control{background-color:#d9dce2}.selected-form-control .hoverField{display:flex!important}.treeview-item .row-item{display:flex;align-items:center;padding:5px 10px}.treeview-item .row-item .multiple-checkBox{margin-inline-start:4px;margin-inline-end:4px}.treeview-item .active{background-color:#f5f6f8}.treeview-row{display:flex;align-items:center}.treeview-row:hover{background-color:#f5f6f8}.treeview-row-form-control{display:flex;align-items:center}.treeview-row-form-control:hover{background-color:#d9dce2}label{margin-bottom:0;cursor:pointer}.bi{cursor:pointer;margin-right:.3rem}ngx-treeview .treeview-container{max-height:200px!important;overflow-x:hidden;scrollbar-color:#b4bac6 transparent!important;scrollbar-width:thin!important;overflow-y:auto}ngx-treeview .select-default{display:flex;justify-content:start;font-size:13px;cursor:pointer;margin-bottom:3px;margin-top:4px}ngx-treeview .dropdown-divider-noMargin{margin-top:0!important}.tree-view ngx-treeview .treeview-container{max-height:500px!important;overflow-x:hidden}.tree-view-form-control ngx-treeview .treeview-container{max-height:300px!important;overflow-x:hidden}ngx-dropdown-treeview .dropdown .dropdown-menu{margin-top:0!important;width:100%}ngx-dropdown-treeview .dropdown .btn-outline-secondary{background-color:#8f98aa1a;border:none!important}ngx-dropdown-treeview .dropdown .btn-outline-secondary:hover{color:#6c757d!important}ngx-dropdown-treeview .dropdown .btn-outline-secondary:focus{box-shadow:none!important}ngx-dropdown-treeview .dropdown .btn-outline-secondary:active{background-color:#8f98aa1a!important;border:none!important;color:#6c757d!important}ngx-dropdown-treeview .dropdown:after{position:static!important}ngx-dropdown-treeview .show .dropdown-toggle{background-color:#8f98aa1a!important;border:none!important;color:#6c757d!important}.rtl .treeview-item .treeview-item{margin-right:2rem!important;margin-left:0!important}.rtl .row-all .col-12{text-align:right}.rtl .row-all .col-12 .pull-right{float:left!important}.rtl .form-check.form-check-inline{margin-right:0!important}.rtl .btn.dropdown-toggle{margin-right:0!important}.rtl .dropdown-menu:not(ngb-datepicker){right:0px;left:unset}.rtl .dropdown :after{margin-top:.6rem;left:.6rem;right:unset!important}.rtl ngx-treeview-item{text-align:right;direction:rtl}@media (min-width: 576px){.rtl .form-inline .form-check-input{margin:3px}}.rtl .form-inline .form-check-input{margin:3px;position:inherit}.rtl .dropdown button{text-align:right!important;direction:rtl}.rtl .fa.fa-caret-right{transform:rotate(180deg)}\n"], components: [{ type: i7$1.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i1$7.DropdownTreeviewComponent, selector: "ngx-dropdown-treeview", inputs: ["buttonClass", "config", "headerTemplate", "itemTemplate", "items"], outputs: ["selectedChange", "filterChange"] }, { type: i1$7.TreeviewComponent, selector: "ngx-treeview", inputs: ["config", "headerTemplate", "itemTemplate", "items"], outputs: ["selectedChange", "filterChange"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i4$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i2$2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltipPosition", "matTooltipDisabled", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { type: i2$6.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$6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
9074
|
+
TreeviewSelectComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TreeviewSelectComponent, selector: "app-dynamic-form-treeview-select", inputs: { treeview: "treeview", treeViewAsFormControl: "treeViewAsFormControl", config: "config", items: "items", value: "value", multiple: "multiple", defaultSelect: "defaultSelect", pp_departmentNestedTree: "pp_departmentNestedTree", useCustomAddEditAction: "useCustomAddEditAction", customPrefix: "customPrefix", customParentProperty: "customParentProperty", placeholder: "placeholder", defaultSelection: "defaultSelection", displayDepTypee: "displayDepTypee", disabled: "disabled", displayIsAllowRecExternal: "displayIsAllowRecExternal" }, outputs: { valueChange: "valueChange", plusClicked: "plusClicked", actionClicked: "actionClicked" }, providers: [{ provide: TreeviewI18n, useClass: DropdownTreeviewSelectI18n }], viewQueries: [{ propertyName: "dropdownTreeviewComponent", first: true, predicate: DropdownTreeviewComponent, descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-template #itemTemplate let-item=\"item\" let-onCollapseExpand=\"onCollapseExpand\"\r\n let-onCheckedChange=\"onCheckedChange\">\r\n <!-- single -->\r\n <div *ngIf=\"!treeview && !multiple\">\r\n <div class=\"text-nowrap row-item\" [ngClass]=\"{ active: item.value === this.value }\">\r\n <i *ngIf=\"item.children\" (click)=\"onCollapseExpand()\" aria-hidden=\"true\" [ngSwitch]=\"item.collapsed\">\r\n <span *ngSwitchCase=\"true\" class=\"bi bi-caret-{{ arabic ? 'left' : 'right' }}-fill caret-icon\"></span>\r\n <span *ngSwitchCase=\"false\" class=\"bi bi-caret-down-fill caret-icon\"></span>\r\n </i>\r\n <!-- <label class=\"form-check-label\" (click)=\"select(item)\">{{\r\n item.text\r\n }}</label> -->\r\n <label *ngIf=\"item.disabled\" class=\"form-check-label\">{{\r\n item.text\r\n }}</label>\r\n <label *ngIf=\"!item.disabled\" class=\"form-check-label\" (click)=\"select(item)\">{{\r\n item.text\r\n }}</label>\r\n </div>\r\n </div>\r\n <!-- Multiple -->\r\n <div *ngIf=\"!treeview && multiple\">\r\n <div class=\"text-nowrap row-item\" [ngClass]=\"{ active: item.value === this.value }\">\r\n <i *ngIf=\"item.children\" (click)=\"onCollapseExpand()\" aria-hidden=\"true\" [ngSwitch]=\"item.collapsed\">\r\n <span *ngSwitchCase=\"true\" class=\"bi bi-caret-{{ arabic ? 'left' : 'right' }}-fill caret-icon\"></span>\r\n <span *ngSwitchCase=\"false\" class=\"bi bi-caret-down-fill caret-icon\"></span>\r\n </i>\r\n <!-- <input\r\n class=\"multiple-checkBox\"\r\n type=\"checkbox\"\r\n [checked]=\"multipleSelection.includes(item.value)\"\r\n (change)=\"selectMultiple($event.target.checked, item)\"\r\n />\r\n\r\n <label class=\"form-check-label\">{{ item.text }}</label> -->\r\n <div class=\"multiple-treeview\">\r\n <mat-checkbox [checked]=\"isItemSelected(item)\" (change)=\"selectMultiple($event.checked, item)\">\r\n <span> {{ item.text }} </span>\r\n </mat-checkbox>\r\n </div>\r\n </div>\r\n </div>\r\n <!-- treeView -->\r\n <div *ngIf=\"treeview && !treeViewAsFormControl\" class=\"tree-view-container\">\r\n <div (mouseenter)=\"hoverField.style.display = 'flex'\" (mouseleave)=\"hoverField.style.display = 'none'\"\r\n class=\"text-nowrap row-item treeview-row\" [ngClass]=\"{ selected: item.value == selectedItem }\">\r\n <i *ngIf=\"item.children\" (click)=\"onCollapsed(item)\" aria-hidden=\"true\" [ngSwitch]=\"item.collapsed\">\r\n <span *ngSwitchCase=\"true\" class=\"bi bi-caret-{{ arabic ? 'left' : 'right' }}-fill caret-icon\"></span>\r\n\r\n <span *ngSwitchCase=\"false\" class=\"bi bi-caret-down-fill caret-icon\"></span>\r\n </i>\r\n <label class=\"form-check-label-treeview\" (click)=\"select(item)\">{{ item.text }}\r\n <span #hoverField class=\"hoverField\">\r\n <span type=\"button\" matTooltip=\"{{ 'department_management.form.edit' | translate }}\"\r\n (click)=\"onAction($event, 'update', item)\">\r\n <li class=\"bi bi-pencil\"></li>\r\n </span>\r\n\r\n <span type=\"button\" matTooltip=\"{{\r\n 'department_management.form.toolTip_message' | translate\r\n }}\" (click)=\"onAction($event, 'add', item)\">\r\n <li class=\"bi bi-plus\"></li>\r\n </span>\r\n </span>\r\n </label>\r\n </div>\r\n </div>\r\n <!-- treeView as form control -->\r\n <div *ngIf=\"treeview && treeViewAsFormControl\" class=\"tree-view-container\">\r\n <div class=\"text-nowrap row-item treeview-row-form-control\"\r\n [ngClass]=\"{ 'selected-form-control': item.value == selectedItem }\">\r\n <i *ngIf=\"item.children\" (click)=\"onCollapsed(item)\" aria-hidden=\"true\" [ngSwitch]=\"item.collapsed\">\r\n <span *ngSwitchCase=\"true\" class=\"bi bi-caret-{{ arabic ? 'left' : 'right' }}-fill caret-icon\"></span>\r\n\r\n <span *ngSwitchCase=\"false\" class=\"bi bi-caret-down-fill caret-icon\"></span>\r\n </i>\r\n <label class=\"form-check-label-treeview\" (click)=\"select(item)\">{{ item.text }}\r\n </label>\r\n </div>\r\n </div>\r\n</ng-template>\r\n<ng-template #headerTemplate let-config=\"config\" let-item=\"item\" let-onCollapseExpand=\"onCollapseExpand\"\r\n let-onCheckedChange=\"onCheckedChange\" let-onFilterTextChange=\"onFilterTextChange\">\r\n <div *ngIf=\"config.hasFilter\" class=\"row row-filter\">\r\n <div class=\"col-12\">\r\n <input class=\"form-control\" type=\"text\" [placeholder]=\"i18n.getFilterPlaceholder(placeholder)\"\r\n [(ngModel)]=\"filterText\" (ngModelChange)=\"onFilterTextChange($event)\" />\r\n </div>\r\n </div>\r\n <div *ngIf=\"config.hasAllCheckBox || config.hasCollapseExpand\" class=\"row\">\r\n <div class=\"col-12\">\r\n <label *ngIf=\"config.hasAllCheckBox\" (click)=\"select(item)\">\r\n <strong>{{ i18n.getAllCheckboxText() }}</strong>\r\n </label>\r\n <label *ngIf=\"config.hasCollapseExpand\" class=\"float-right\" (click)=\"onCollapseExpand()\">\r\n <i [title]=\"i18n.getTooltipCollapseExpandText(item.collapsed)\" aria-hidden=\"true\" [ngSwitch]=\"item.collapsed\">\r\n <span *ngSwitchCase=\"true\" class=\"bi bi-arrows-angle-expand\"></span>\r\n <span *ngSwitchCase=\"false\" class=\"bi bi-arrows-angle-contract\"></span>\r\n </i>\r\n </label>\r\n </div>\r\n </div>\r\n <a *ngIf=\"defaultSelect\" class=\"select-default\" (click)=\"selectDefault()\">{{'department_management.selectDefault'|\r\n translate}}</a>\r\n <div *ngIf=\"config.hasDivider\" class=\"dropdown-divider\" [ngClass]=\"{'dropdown-divider-noMargin': defaultSelect}\">\r\n </div>\r\n</ng-template>\r\n\r\n<ng-container *ngIf=\"!treeview && !multiple\">\r\n <div class=\"dropdown-wrapper\">\r\n <ngx-dropdown-treeview [config]=\"config\" [headerTemplate]=\"headerTemplate\" [items]=\"items\"\r\n [itemTemplate]=\"itemTemplate\">\r\n </ngx-dropdown-treeview>\r\n <div class=\"disable-effect\" *ngIf=\"disabled\"></div>\r\n </div>\r\n</ng-container>\r\n<ng-container *ngIf=\"!treeview && multiple\">\r\n <div class=\"multiple-tree-view dropdown-wrapper\">\r\n <ngx-dropdown-treeview [config]=\"config\" [items]=\"items\" [itemTemplate]=\"itemTemplate\">\r\n </ngx-dropdown-treeview>\r\n <div class=\"disable-effect\" *ngIf=\"disabled\"></div>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"treeview && !treeViewAsFormControl\">\r\n <div class=\"tree-view\">\r\n <ngx-treeview [config]=\"config\" [headerTemplate]=\"headerTemplate\" [items]=\"items\" [itemTemplate]=\"itemTemplate\">\r\n </ngx-treeview>\r\n </div>\r\n</ng-container>\r\n<ng-container *ngIf=\"treeview && treeViewAsFormControl\">\r\n <div class=\"tree-view-form-control\">\r\n <ngx-treeview [config]=\"config\" [headerTemplate]=\"headerTemplate\" [items]=\"items\" [itemTemplate]=\"itemTemplate\">\r\n </ngx-treeview>\r\n </div>\r\n</ng-container>", 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}.caret-icon{color:#6c757d;font-size:14px}.dropdown-wrapper{position:relative}.dropdown-wrapper .disable-effect{position:absolute;top:0;bottom:0;left:0;right:0;z-index:99}.multiple-treeview .mat-checkbox-ripple .mat-ripple-element,.multiple-treeview .mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#33e3b7!important}.multiple-treeview .mat-checkbox-ripple .mat-ripple-element{position:fixed;left:inherit;top:inherit;transform:translate(-3px,-3px)!important}.multiple-treeview mat-checkbox .mat-checkbox-background{background-color:#d9dce2!important}.form-check-label-treeview{display:flex;align-items:center;justify-content:space-between;width:100%}.form-check-label-treeview .hoverField{display:none;align-items:center;text-align:center}.form-check-label-treeview .hoverField span{display:flex;align-items:center;justify-content:center;margin:0 3px;border:none;background-color:snow;background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:30px;width:30px;color:#fff;border-radius:5px;list-style:none;margin-inline-end:4px}.form-check-label-treeview .hoverField span .bi-plus{font-size:28px;display:flex;justify-content:center}.form-check-label-treeview .hoverField .add-btn{width:164px;padding:1px;display:flex;justify-content:center;align-items:center;font-size:13px;background-color:#0dbab5;border-radius:5px;border:0;color:#fff;--tw-shadow: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.form-check-label-treeview .hoverField .plus-btn{display:flex;font-size:28px;align-items:center}.selected{background-color:#f5f6f8}.selected .hoverField{display:flex!important}.selected-form-control{background-color:#d9dce2}.selected-form-control .hoverField{display:flex!important}.treeview-item .row-item{display:flex;align-items:center;padding:5px 10px}.treeview-item .row-item .multiple-checkBox{margin-inline-start:4px;margin-inline-end:4px}.treeview-item .active{background-color:#f5f6f8}.treeview-row{display:flex;align-items:center}.treeview-row:hover{background-color:#f5f6f8}.treeview-row-form-control{display:flex;align-items:center}.treeview-row-form-control:hover{background-color:#d9dce2}label{margin-bottom:0;cursor:pointer}.bi{cursor:pointer;margin-right:.3rem}ngx-treeview .treeview-container{max-height:200px!important;overflow-x:hidden;scrollbar-color:#b4bac6 transparent!important;scrollbar-width:thin!important;overflow-y:auto}ngx-treeview .select-default{display:flex;justify-content:start;font-size:13px;cursor:pointer;margin-bottom:3px;margin-top:4px}ngx-treeview .dropdown-divider-noMargin{margin-top:0!important}.tree-view ngx-treeview .treeview-container{max-height:500px!important;overflow-x:hidden}.tree-view-form-control ngx-treeview .treeview-container{max-height:300px!important;overflow-x:hidden}ngx-dropdown-treeview .dropdown .dropdown-menu{margin-top:0!important;width:100%}ngx-dropdown-treeview .dropdown .btn-outline-secondary{background-color:#8f98aa1a;border:none!important}ngx-dropdown-treeview .dropdown .btn-outline-secondary:hover{color:#6c757d!important}ngx-dropdown-treeview .dropdown .btn-outline-secondary:focus{box-shadow:none!important}ngx-dropdown-treeview .dropdown .btn-outline-secondary:active{background-color:#8f98aa1a!important;border:none!important;color:#6c757d!important}ngx-dropdown-treeview .dropdown:after{position:static!important}ngx-dropdown-treeview .show .dropdown-toggle{background-color:#8f98aa1a!important;border:none!important;color:#6c757d!important}.rtl .treeview-item .treeview-item{margin-right:2rem!important;margin-left:0!important}.rtl .row-all .col-12{text-align:right}.rtl .row-all .col-12 .pull-right{float:left!important}.rtl .form-check.form-check-inline{margin-right:0!important}.rtl .btn.dropdown-toggle{margin-right:0!important}.rtl .dropdown-menu:not(ngb-datepicker){right:0px;left:unset}.rtl .dropdown :after{margin-top:.6rem;left:.6rem;right:unset!important}.rtl ngx-treeview-item{text-align:right;direction:rtl}@media (min-width: 576px){.rtl .form-inline .form-check-input{margin:3px}}.rtl .form-inline .form-check-input{margin:3px;position:inherit}.rtl .dropdown button{text-align:right!important;direction:rtl}.rtl .fa.fa-caret-right{transform:rotate(180deg)}\n"], components: [{ type: i7$2.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: i1$7.DropdownTreeviewComponent, selector: "ngx-dropdown-treeview", inputs: ["buttonClass", "config", "headerTemplate", "itemTemplate", "items"], outputs: ["selectedChange", "filterChange"] }, { type: i1$7.TreeviewComponent, selector: "ngx-treeview", inputs: ["config", "headerTemplate", "itemTemplate", "items"], outputs: ["selectedChange", "filterChange"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i4$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i2$2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltipPosition", "matTooltipDisabled", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { type: i2$6.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$6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
9079
9075
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TreeviewSelectComponent, decorators: [{
|
|
9080
9076
|
type: Component,
|
|
9081
9077
|
args: [{
|
|
@@ -10475,7 +10471,7 @@ class DynamicFormSelectUsersComponent {
|
|
|
10475
10471
|
}
|
|
10476
10472
|
}
|
|
10477
10473
|
DynamicFormSelectUsersComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicFormSelectUsersComponent, deps: [{ token: UsersInDepartmentsApiService }, { token: i1.TranslateService }, { token: TranslationService }, { token: i2$6.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
10478
|
-
DynamicFormSelectUsersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicFormSelectUsersComponent, selector: "cts-dynamic-form-select-users", inputs: { deptTitle: "deptTitle", groupName: "groupName", label: "label", bindValue: "bindValue", bindLabel: "bindLabel", arabicBindLabel: "arabicBindLabel", placeholder: "placeholder", multiple: "multiple", searchable: "searchable", closeOnSelect: "closeOnSelect", hideSelectedItems: "hideSelectedItems", preSelectedValues: "preSelectedValues", usePreSelectedValue: "usePreSelectedValue", disabled: "disabled", filter: "filter", useArabicName: "useArabicName" }, outputs: { onSelectItems: "onSelectItems" }, viewQueries: [{ propertyName: "ngSelectComponent", first: true, predicate: ["ngSelectComponent"], descendants: true }], usesOnChanges: 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 m-1\">*</span></label\r\n >\r\n </div>\r\n</ng-container>\r\n<div class=\"user-select\" [ngClass]=\"{ 'multiple-wrapper': multiple }\" SetRtl>\r\n <ng-select\r\n #ngSelectComponent\r\n [items]=\"buffer\"\r\n [bindLabel]=\"useArabicName ? (isArabic ? arabicBindLabel : bindLabel) : bindLabel\"\r\n [placeholder]=\"\r\n multiple && (selection && selection.length > 0) ? selectionstrg : placeholder\r\n \"\r\n [multiple]=\"multiple\"\r\n [searchable]=\"searchable\"\r\n [closeOnSelect]=\"closeOnSelect\"\r\n [hideSelected]=\"hideSelectedItems\"\r\n [loading]=\"loading\"\r\n (scrollToEnd)=\"onScrollToEnd()\"\r\n [disabled]=\"disabled\"\r\n [typeahead]=\"userNameInput$\"\r\n [compareWith]=\"compareFn\"\r\n [(ngModel)]=\"selection\"\r\n (change)=\"emitSelection($event)\"\r\n >\r\n <ng-template ng-label-tmp let-item=\"item\" let-clear=\"clear\">\r\n <span\r\n style=\"\r\n display: flex;\r\n align-items: center;\r\n column-gap: 4px;\r\n font-size: 16px;\r\n \"\r\n >\r\n <div style=\"width: 30px; height: 30px\">\r\n <cts-avatar [user]=\"item\"></cts-avatar>\r\n </div>\r\n <div class=\"user-name\">\r\n {{ item?.id === 'system' ? ('SYSTEM_ADMIN' | translate) : \r\n (useArabicName ? (isArabic ? (item?.fullNameAr ? item?.fullNameAr : item?.fullName) : item?.fullName) : \r\n (item?.properties?.firstName + \" \" +item?.properties?.lastName)) }}\r\n\r\n\r\n </div>\r\n <div>\r\n <span\r\n class=\"ng-value-icon right\"\r\n (click)=\"clear(item)\"\r\n aria-hidden=\"true\"\r\n >\u00D7</span\r\n >\r\n </div>\r\n </span>\r\n </ng-template>\r\n\r\n <ng-template\r\n ng-option-tmp\r\n let-item=\"item\"\r\n let-item$=\"item$\"\r\n let-index=\"index\"\r\n >\r\n <span\r\n style=\"\r\n display: flex;\r\n align-items: center;\r\n column-gap: 4px;\r\n font-size: 16px;\r\n \"\r\n >\r\n <mat-checkbox\r\n *ngIf=\"multiple\"\r\n id=\"item-{{ index }}\"\r\n [ngModel]=\"item$.selected\"\r\n (click)=\"(false)\"\r\n ></mat-checkbox>\r\n <div style=\"width: 30px; height: 30px\">\r\n <cts-avatar [user]=\"item\"></cts-avatar>\r\n </div>\r\n <div>\r\n {{ item?.id === 'system' ? ('SYSTEM_ADMIN' | translate) : \r\n (useArabicName ? (isArabic ? (item?.fullNameAr ? item?.fullNameAr : item?.fullName) : item?.fullName) : \r\n (item?.properties?.firstName + \" \" +item?.properties?.lastName)) }}\r\n </div>\r\n\r\n <div></div>\r\n </span>\r\n </ng-template>\r\n </ng-select>\r\n</div>\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 {{ \"VALIDATORS.REQUIRED\" | translate }}\r\n </li>\r\n </ul>\r\n</mat-error>\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}.select-label{color:#8f98aa;font-size:12px;margin-bottom:0}.user-select .ng-select-container{border:1px solid #ccc!important;border-radius:5px!important;background-color:#8f98aa1a!important}.user-select .ng-select-container .ng-value-container{padding:5px 7px 0!important}.user-select .ng-select-container .ng-value-container .ng-placeholder{padding:0 5px;font-size:12px}.user-select .ng-select-container .ng-value-container .ng-value{color:#495057}.user-select .ng-select-container .ng-arrow-wrapper{padding:0 20px}.user-select .ng-select-container .ng-input{left:10px;right:10px;width:auto}.user-select .mat-checkbox-ripple .mat-ripple-element,.user-select .mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#33e3b7!important}.user-select .mat-checkbox-ripple .mat-ripple-element{position:fixed;left:inherit;top:inherit;transform:translate(-3px,-3px)!important}.user-select mat-checkbox .mat-checkbox-background{background-color:#d9dce2!important}.multiple-wrapper .ng-select-container{overflow:visible!important}.multiple-wrapper .ng-select-container.ng-has-value{margin-bottom:65px}.multiple-wrapper .ng-select-container .ng-value-container{position:absolute;top:40px;width:100%;max-height:65px;overflow-y:auto}.multiple-wrapper .ng-select-container .ng-value-container .ng-placeholder{display:block;position:absolute;top:-26px!important}.multiple-wrapper .ng-select-container .ng-value-container .ng-value{padding:5px 10px}.multiple-wrapper .ng-select-container .ng-value-container .ng-value .user-name{font-size:12px}.multiple-wrapper .ng-select-container .ng-value-container .ng-input{position:absolute;top:-35px!important}.multiple-wrapper .ng-select-container .ng-clear-wrapper{display:none}.multiple-wrapper .ng-select-container .ng-arrow-wrapper{position:absolute;right:5px}.multiple-wrapper .ng-select-filtered .ng-value-container .ng-placeholder{display:none!important}.multiple-wrapper.rtl .ng-select-container .ng-value-container .ng-value{padding:5px 10px}.multiple-wrapper.rtl .ng-select-container .ng-value-container .ng-value .ng-value-icon{border-left:none!important;border-right:1px solid #b8dbff}.multiple-wrapper.rtl .ng-select-container .ng-arrow-wrapper{left:5px;right:auto}.ng-select-disabled .ng-select-container{background-color:#e9ecef!important}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .option-wrapper .check-box-wrapper{position:relative}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .option-wrapper .check-box-wrapper input{visibility:hidden;width:20px;height:20px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .option-wrapper .check-box-wrapper .icon-wrapper{position:absolute;top:0px;left:0px;width:20px;height:20px;border:1px solid #2e62df;display:flex;justify-content:center;align-items:center}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .option-wrapper .check-box-wrapper .icon-wrapper .icon{color:#2e62df;display:none;justify-content:center;align-items:center;font-weight:bold}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option-selected .option-wrapper .check-box-wrapper .icon-wrapper .icon{display:flex}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option-selected .option-wrapper .label-wrapper{color:#2e62df}.ng-select .ng-select-focused:not(.ng-select-opened) .ng-select-container{border-color:#ccc;box-shadow:none}\n"], components: [{ type: i3$2.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { type: AvatarComponent, selector: "cts-avatar", inputs: ["user"] }, { type: i7$1.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: SetRtlDirective, selector: "[SetRtl]" }, { type: i4$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2$6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i3$2.ɵh, selector: "[ng-label-tmp]" }, { type: i3$2.ɵf, selector: "[ng-option-tmp]" }, { type: i6.MatError, selector: "mat-error", inputs: ["id"] }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
10474
|
+
DynamicFormSelectUsersComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicFormSelectUsersComponent, selector: "cts-dynamic-form-select-users", inputs: { deptTitle: "deptTitle", groupName: "groupName", label: "label", bindValue: "bindValue", bindLabel: "bindLabel", arabicBindLabel: "arabicBindLabel", placeholder: "placeholder", multiple: "multiple", searchable: "searchable", closeOnSelect: "closeOnSelect", hideSelectedItems: "hideSelectedItems", preSelectedValues: "preSelectedValues", usePreSelectedValue: "usePreSelectedValue", disabled: "disabled", filter: "filter", useArabicName: "useArabicName" }, outputs: { onSelectItems: "onSelectItems" }, viewQueries: [{ propertyName: "ngSelectComponent", first: true, predicate: ["ngSelectComponent"], descendants: true }], usesOnChanges: 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 m-1\">*</span></label\r\n >\r\n </div>\r\n</ng-container>\r\n<div class=\"user-select\" [ngClass]=\"{ 'multiple-wrapper': multiple }\" SetRtl>\r\n <ng-select\r\n #ngSelectComponent\r\n [items]=\"buffer\"\r\n [bindLabel]=\"useArabicName ? (isArabic ? arabicBindLabel : bindLabel) : bindLabel\"\r\n [placeholder]=\"\r\n multiple && (selection && selection.length > 0) ? selectionstrg : placeholder\r\n \"\r\n [multiple]=\"multiple\"\r\n [searchable]=\"searchable\"\r\n [closeOnSelect]=\"closeOnSelect\"\r\n [hideSelected]=\"hideSelectedItems\"\r\n [loading]=\"loading\"\r\n (scrollToEnd)=\"onScrollToEnd()\"\r\n [disabled]=\"disabled\"\r\n [typeahead]=\"userNameInput$\"\r\n [compareWith]=\"compareFn\"\r\n [(ngModel)]=\"selection\"\r\n (change)=\"emitSelection($event)\"\r\n >\r\n <ng-template ng-label-tmp let-item=\"item\" let-clear=\"clear\">\r\n <span\r\n style=\"\r\n display: flex;\r\n align-items: center;\r\n column-gap: 4px;\r\n font-size: 16px;\r\n \"\r\n >\r\n <div style=\"width: 30px; height: 30px\">\r\n <cts-avatar [user]=\"item\"></cts-avatar>\r\n </div>\r\n <div class=\"user-name\">\r\n {{ item?.id === 'system' ? ('SYSTEM_ADMIN' | translate) : \r\n (useArabicName ? (isArabic ? (item?.fullNameAr ? item?.fullNameAr : item?.fullName) : item?.fullName) : \r\n (item?.properties?.firstName + \" \" +item?.properties?.lastName)) }}\r\n\r\n\r\n </div>\r\n <div>\r\n <span\r\n class=\"ng-value-icon right\"\r\n (click)=\"clear(item)\"\r\n aria-hidden=\"true\"\r\n >\u00D7</span\r\n >\r\n </div>\r\n </span>\r\n </ng-template>\r\n\r\n <ng-template\r\n ng-option-tmp\r\n let-item=\"item\"\r\n let-item$=\"item$\"\r\n let-index=\"index\"\r\n >\r\n <span\r\n style=\"\r\n display: flex;\r\n align-items: center;\r\n column-gap: 4px;\r\n font-size: 16px;\r\n \"\r\n >\r\n <mat-checkbox\r\n *ngIf=\"multiple\"\r\n id=\"item-{{ index }}\"\r\n [ngModel]=\"item$.selected\"\r\n (click)=\"(false)\"\r\n ></mat-checkbox>\r\n <div style=\"width: 30px; height: 30px\">\r\n <cts-avatar [user]=\"item\"></cts-avatar>\r\n </div>\r\n <div>\r\n {{ item?.id === 'system' ? ('SYSTEM_ADMIN' | translate) : \r\n (useArabicName ? (isArabic ? (item?.fullNameAr ? item?.fullNameAr : item?.fullName) : item?.fullName) : \r\n (item?.properties?.firstName + \" \" +item?.properties?.lastName)) }}\r\n </div>\r\n\r\n <div></div>\r\n </span>\r\n </ng-template>\r\n </ng-select>\r\n</div>\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 {{ \"VALIDATORS.REQUIRED\" | translate }}\r\n </li>\r\n </ul>\r\n</mat-error>\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}.select-label{color:#8f98aa;font-size:12px;margin-bottom:0}.user-select .ng-select-container{border:1px solid #ccc!important;border-radius:5px!important;background-color:#8f98aa1a!important}.user-select .ng-select-container .ng-value-container{padding:5px 7px 0!important}.user-select .ng-select-container .ng-value-container .ng-placeholder{padding:0 5px;font-size:12px}.user-select .ng-select-container .ng-value-container .ng-value{color:#495057}.user-select .ng-select-container .ng-arrow-wrapper{padding:0 20px}.user-select .ng-select-container .ng-input{left:10px;right:10px;width:auto}.user-select .mat-checkbox-ripple .mat-ripple-element,.user-select .mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#33e3b7!important}.user-select .mat-checkbox-ripple .mat-ripple-element{position:fixed;left:inherit;top:inherit;transform:translate(-3px,-3px)!important}.user-select mat-checkbox .mat-checkbox-background{background-color:#d9dce2!important}.multiple-wrapper .ng-select-container{overflow:visible!important}.multiple-wrapper .ng-select-container.ng-has-value{margin-bottom:65px}.multiple-wrapper .ng-select-container .ng-value-container{position:absolute;top:40px;width:100%;max-height:65px;overflow-y:auto}.multiple-wrapper .ng-select-container .ng-value-container .ng-placeholder{display:block;position:absolute;top:-26px!important}.multiple-wrapper .ng-select-container .ng-value-container .ng-value{padding:5px 10px}.multiple-wrapper .ng-select-container .ng-value-container .ng-value .user-name{font-size:12px}.multiple-wrapper .ng-select-container .ng-value-container .ng-input{position:absolute;top:-35px!important}.multiple-wrapper .ng-select-container .ng-clear-wrapper{display:none}.multiple-wrapper .ng-select-container .ng-arrow-wrapper{position:absolute;right:5px}.multiple-wrapper .ng-select-filtered .ng-value-container .ng-placeholder{display:none!important}.multiple-wrapper.rtl .ng-select-container .ng-value-container .ng-value{padding:5px 10px}.multiple-wrapper.rtl .ng-select-container .ng-value-container .ng-value .ng-value-icon{border-left:none!important;border-right:1px solid #b8dbff}.multiple-wrapper.rtl .ng-select-container .ng-arrow-wrapper{left:5px;right:auto}.ng-select-disabled .ng-select-container{background-color:#e9ecef!important}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .option-wrapper .check-box-wrapper{position:relative}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .option-wrapper .check-box-wrapper input{visibility:hidden;width:20px;height:20px}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .option-wrapper .check-box-wrapper .icon-wrapper{position:absolute;top:0px;left:0px;width:20px;height:20px;border:1px solid #2e62df;display:flex;justify-content:center;align-items:center}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option .option-wrapper .check-box-wrapper .icon-wrapper .icon{color:#2e62df;display:none;justify-content:center;align-items:center;font-weight:bold}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option-selected .option-wrapper .check-box-wrapper .icon-wrapper .icon{display:flex}.ng-dropdown-panel .ng-dropdown-panel-items .ng-option-selected .option-wrapper .label-wrapper{color:#2e62df}.ng-select .ng-select-focused:not(.ng-select-opened) .ng-select-container{border-color:#ccc;box-shadow:none}\n"], components: [{ type: i3$2.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }, { type: AvatarComponent, selector: "cts-avatar", inputs: ["user"] }, { type: i7$2.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: SetRtlDirective, selector: "[SetRtl]" }, { type: i4$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2$6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { type: i3$2.ɵh, selector: "[ng-label-tmp]" }, { type: i3$2.ɵf, selector: "[ng-option-tmp]" }, { type: i6.MatError, selector: "mat-error", inputs: ["id"] }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
10479
10475
|
__decorate([
|
|
10480
10476
|
Cacheable({
|
|
10481
10477
|
maxCacheCount: 1000,
|
|
@@ -12013,7 +12009,7 @@ class DynamicFilterComponent {
|
|
|
12013
12009
|
}
|
|
12014
12010
|
}
|
|
12015
12011
|
DynamicFilterComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicFilterComponent, deps: [{ token: TranslationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
12016
|
-
DynamicFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicFilterComponent, selector: "cts-dynamic-filter", inputs: { title: "title", filters: "filters", selections: "selections", id: "id", entityType: "entityType", prefix: "prefix", department: "department", componentType: "componentType", customPageProvider: "customPageProvider", config: "config" }, outputs: { onFilterSelected: "onFilterSelected" }, ngImport: i0, template: "<div class=\"aggregation-container\">\r\n <div class=\"search-title\">\r\n {{ prefix + \".\" + title | translate }}\r\n </div>\r\n <ng-container *ngIf=\"filters && componentType != 'colorsCodes'\">\r\n <ng-container *ngFor=\"let group of filters; index as i\">\r\n <div *ngIf=\"i < 5 || more\" class=\"search-checkbox\">\r\n <!-- <input\r\n [checked]=\"_selections.includes(group.key)\"\r\n type=\"checkbox\"\r\n (change)=\"onFilterSelect(group.key, $event.target.checked)\"\r\n /> -->\r\n <!-- <div class=\"mx-8\">\r\n <span [ngSwitch]=\"EntityType(group.fetchedKey)\">\r\n <span *ngSwitchCase=\"'directoryEntry'\">\r\n {{\r\n \"vocabulary.\" + group.fetchedKey.directoryName + \".\" + group.key\r\n | translate\r\n }}\r\n </span>\r\n <span *ngSwitchCase=\"'user'\">\r\n {{\r\n group.fetchedKey.properties.firstName +\r\n \" \" +\r\n group.fetchedKey.properties.lastName\r\n }}\r\n </span>\r\n <span *ngSwitchDefault>\r\n {{ prefix + \".\" + \"buckets.\" + group.key | translate }}\r\n </span>\r\n </span>\r\n <bdi>({{ group.docCount }})</bdi>\r\n </div> -->\r\n <mat-checkbox\r\n [checked]=\"_selections.includes(group.key)\"\r\n (change)=\"onFilterSelect(group.key, $event.checked)\"\r\n >\r\n <span [ngSwitch]=\"componentType\" class=\"aggregation-label\">\r\n\r\n <span *ngSwitchCase=\"'custom-voc'\">\r\n <lib-cutome-voc-viewer [type]=\"componentType\" [group]=\"group\"></lib-cutome-voc-viewer>\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'vocabulary'\">\r\n <lib-cutome-voc-viewer [type]=\"componentType\" [group]=\"group\"></lib-cutome-voc-viewer>\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'user'\">\r\n {{\r\n group.key === 'system' ? ('SYSTEM_ADMIN' | translate) : (group.fetchedKey.properties.firstName + \" \" + group.fetchedKey.properties.lastName)\r\n }}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'custom-pp'\">\r\n <lib-custom-pp-viewer [pageProvider]=\"customPageProvider\" [config]=\"config\" [group]=\"group\"></lib-custom-pp-viewer>\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'custom-document'\">\r\n <lib-custom-document-viewer [pageProvider]=\"customPageProvider\" [group]=\"group\"></lib-custom-document-viewer>\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'department'\">\r\n <cts-department-viewer\r\n [noStyle]=\"true\"\r\n [value]=\"group.key\"\r\n >\r\n </cts-department-viewer>\r\n <!-- {{group.key}} -->\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'custom-department'\">\r\n {{isArabic ? group.fetchedKey.properties[config.propertyAr] : group.fetchedKey.properties[config.propertyEn]}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'string'\">\r\n <span>{{group.key}}</span>\r\n </span>\r\n <span *ngSwitchDefault>\r\n {{ prefix + \".\" + \"buckets.\" + group.key | translate }}\r\n </span>\r\n </span>\r\n <bdi>({{ group.docCount }})</bdi></mat-checkbox\r\n >\r\n </div>\r\n </ng-container>\r\n <div *ngIf=\"filters.length > 5\" class=\"more\">\r\n <button class=\"btn-more\" (click)=\"more = !more\">\r\n {{\r\n more\r\n ? (prefix + \".\" + \"viewless\" | translate)\r\n : (prefix + \".\" + \"viewmore\" | translate)\r\n }}\r\n </button>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"filters && componentType == 'colorsCodes'\">\r\n <div class=\"flex flex-wrap colorsContainer\">\r\n <ng-container *ngFor=\"let group of filters; index as i\">\r\n <div *ngIf=\"i < 24 || more\" class=\"color-search-checkbox flex items-end justify-start\" [style.backgroundColor]=\"group.key\"\r\n matTooltip=\"{{'search.colorInOtherPhotos' | translate :{num:group.docCount} }}\" [matTooltipPosition]=\"'above'\" \r\n (click)=\"onFilterSelect(group.key, (_selections.includes(group.key)) ? false : true)\">\r\n <span class=\"checkIcon bi bi-check\" *ngIf=\"_selections.includes(group.key)\" [ngStyle]=\"{color: (isWhiteOrClosetToWhite(group.key)) ? 'black': 'white'}\"></span>\r\n </div>\r\n \r\n </ng-container>\r\n </div>\r\n <div *ngIf=\"filters.length > 20\" class=\"more\">\r\n <button class=\"btn-more mt-1\" (click)=\"more = !more\">\r\n {{\r\n more\r\n ? (prefix + \".\" + \"viewless\" | translate)\r\n : (prefix + \".\" + \"viewmore\" | translate)\r\n }}\r\n </button>\r\n </div>\r\n </ng-container>\r\n\r\n\r\n\r\n \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}.mx-8{margin-left:8px;margin-right:8px}.aggregation-container{border-bottom:1px solid #b4bac6;padding-bottom:8px}.aggregation-container .search-title{margin-bottom:6px;margin-top:6px;border-bottom-width:2px;font-weight:700;--tw-text-opacity: 1;color:rgba(70,85,115,var(--tw-text-opacity))}.aggregation-container .search-checkbox{display:flex;align-items:center;margin-bottom:.5rem}.aggregation-container .colorsContainer{overflow:visible;width:max-content;max-width:252px;grid-gap:4px;gap:4px}.aggregation-container .color-search-checkbox{width:28px;height:28px;box-shadow:#00000059 3px 5px 10px;transition:all .2s ease-in-out;cursor:pointer;border-radius:10%/50%}.aggregation-container .color-search-checkbox .checkIcon{width:1rem;height:1rem;min-width:1rem;min-height:1rem;font-size:1rem;line-height:1rem;color:#fff}.aggregation-container .color-search-checkbox:hover{transform:scale(1.3)}.aggregation-container .mat-checkbox-ripple .mat-ripple-element,.aggregation-container .mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#33e3b7!important}.aggregation-container .mat-checkbox-ripple .mat-ripple-element{position:fixed;left:inherit;top:inherit;transform:translate(-3px,-3px)!important}.aggregation-container mat-checkbox .mat-checkbox-background{background-color:#d9dce2!important}.aggregation-container mat-checkbox .mat-checkbox-inner-container{transform:scale(1.1)}.aggregation-container .justify-items-center{justify-items:center}.aggregation-container .more{display:flex;justify-content:center}.aggregation-container .btn-more{border-bottom-width:2px;--tw-border-opacity: 1;border-color:rgba(217,220,226,var(--tw-border-opacity));background:none;border:none;margin:0;padding:0;color:#00f}.rtl mat-checkbox .mat-checkbox-inner-container{margin-right:0!important;margin-left:8px!important}\n"], components: [{ type: i7$1.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: CutomeVocViewerComponent, selector: "lib-cutome-voc-viewer", inputs: ["type", "group"] }, { type: CustomPpViewerComponent, selector: "lib-custom-pp-viewer", inputs: ["pageProvider", "group", "config"] }, { type: CustomDocumentViewerComponent, selector: "lib-custom-document-viewer", inputs: ["pageProvider", "group"] }, { type: DepartmentViewerComponent, selector: "cts-department-viewer", inputs: ["label", "value", "dropdownId", "vertical", "withOutLabel", "noStyle"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i4$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i4$1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { type: i2$2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltipPosition", "matTooltipDisabled", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { type: i4$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
12012
|
+
DynamicFilterComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicFilterComponent, selector: "cts-dynamic-filter", inputs: { title: "title", filters: "filters", selections: "selections", id: "id", entityType: "entityType", prefix: "prefix", department: "department", componentType: "componentType", customPageProvider: "customPageProvider", config: "config" }, outputs: { onFilterSelected: "onFilterSelected" }, ngImport: i0, template: "<div class=\"aggregation-container\">\r\n <div class=\"search-title\">\r\n {{ prefix + \".\" + title | translate }}\r\n </div>\r\n <ng-container *ngIf=\"filters && componentType != 'colorsCodes'\">\r\n <ng-container *ngFor=\"let group of filters; index as i\">\r\n <div *ngIf=\"i < 5 || more\" class=\"search-checkbox\">\r\n <!-- <input\r\n [checked]=\"_selections.includes(group.key)\"\r\n type=\"checkbox\"\r\n (change)=\"onFilterSelect(group.key, $event.target.checked)\"\r\n /> -->\r\n <!-- <div class=\"mx-8\">\r\n <span [ngSwitch]=\"EntityType(group.fetchedKey)\">\r\n <span *ngSwitchCase=\"'directoryEntry'\">\r\n {{\r\n \"vocabulary.\" + group.fetchedKey.directoryName + \".\" + group.key\r\n | translate\r\n }}\r\n </span>\r\n <span *ngSwitchCase=\"'user'\">\r\n {{\r\n group.fetchedKey.properties.firstName +\r\n \" \" +\r\n group.fetchedKey.properties.lastName\r\n }}\r\n </span>\r\n <span *ngSwitchDefault>\r\n {{ prefix + \".\" + \"buckets.\" + group.key | translate }}\r\n </span>\r\n </span>\r\n <bdi>({{ group.docCount }})</bdi>\r\n </div> -->\r\n <mat-checkbox\r\n [checked]=\"_selections.includes(group.key)\"\r\n (change)=\"onFilterSelect(group.key, $event.checked)\"\r\n >\r\n <span [ngSwitch]=\"componentType\" class=\"aggregation-label\">\r\n\r\n <span *ngSwitchCase=\"'custom-voc'\">\r\n <lib-cutome-voc-viewer [type]=\"componentType\" [group]=\"group\"></lib-cutome-voc-viewer>\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'vocabulary'\">\r\n <lib-cutome-voc-viewer [type]=\"componentType\" [group]=\"group\"></lib-cutome-voc-viewer>\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'user'\">\r\n {{\r\n group.key === 'system' ? ('SYSTEM_ADMIN' | translate) : (group.fetchedKey.properties.firstName + \" \" + group.fetchedKey.properties.lastName)\r\n }}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'custom-pp'\">\r\n <lib-custom-pp-viewer [pageProvider]=\"customPageProvider\" [config]=\"config\" [group]=\"group\"></lib-custom-pp-viewer>\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'custom-document'\">\r\n <lib-custom-document-viewer [pageProvider]=\"customPageProvider\" [group]=\"group\"></lib-custom-document-viewer>\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'department'\">\r\n <cts-department-viewer\r\n [noStyle]=\"true\"\r\n [value]=\"group.key\"\r\n >\r\n </cts-department-viewer>\r\n <!-- {{group.key}} -->\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'custom-department'\">\r\n {{isArabic ? group.fetchedKey.properties[config.propertyAr] : group.fetchedKey.properties[config.propertyEn]}}\r\n </span>\r\n\r\n <span *ngSwitchCase=\"'string'\">\r\n <span>{{group.key}}</span>\r\n </span>\r\n <span *ngSwitchDefault>\r\n {{ prefix + \".\" + \"buckets.\" + group.key | translate }}\r\n </span>\r\n </span>\r\n <bdi>({{ group.docCount }})</bdi></mat-checkbox\r\n >\r\n </div>\r\n </ng-container>\r\n <div *ngIf=\"filters.length > 5\" class=\"more\">\r\n <button class=\"btn-more\" (click)=\"more = !more\">\r\n {{\r\n more\r\n ? (prefix + \".\" + \"viewless\" | translate)\r\n : (prefix + \".\" + \"viewmore\" | translate)\r\n }}\r\n </button>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"filters && componentType == 'colorsCodes'\">\r\n <div class=\"flex flex-wrap colorsContainer\">\r\n <ng-container *ngFor=\"let group of filters; index as i\">\r\n <div *ngIf=\"i < 24 || more\" class=\"color-search-checkbox flex items-end justify-start\" [style.backgroundColor]=\"group.key\"\r\n matTooltip=\"{{'search.colorInOtherPhotos' | translate :{num:group.docCount} }}\" [matTooltipPosition]=\"'above'\" \r\n (click)=\"onFilterSelect(group.key, (_selections.includes(group.key)) ? false : true)\">\r\n <span class=\"checkIcon bi bi-check\" *ngIf=\"_selections.includes(group.key)\" [ngStyle]=\"{color: (isWhiteOrClosetToWhite(group.key)) ? 'black': 'white'}\"></span>\r\n </div>\r\n \r\n </ng-container>\r\n </div>\r\n <div *ngIf=\"filters.length > 20\" class=\"more\">\r\n <button class=\"btn-more mt-1\" (click)=\"more = !more\">\r\n {{\r\n more\r\n ? (prefix + \".\" + \"viewless\" | translate)\r\n : (prefix + \".\" + \"viewmore\" | translate)\r\n }}\r\n </button>\r\n </div>\r\n </ng-container>\r\n\r\n\r\n\r\n \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}.mx-8{margin-left:8px;margin-right:8px}.aggregation-container{border-bottom:1px solid #b4bac6;padding-bottom:8px}.aggregation-container .search-title{margin-bottom:6px;margin-top:6px;border-bottom-width:2px;font-weight:700;--tw-text-opacity: 1;color:rgba(70,85,115,var(--tw-text-opacity))}.aggregation-container .search-checkbox{display:flex;align-items:center;margin-bottom:.5rem}.aggregation-container .colorsContainer{overflow:visible;width:max-content;max-width:252px;grid-gap:4px;gap:4px}.aggregation-container .color-search-checkbox{width:28px;height:28px;box-shadow:#00000059 3px 5px 10px;transition:all .2s ease-in-out;cursor:pointer;border-radius:10%/50%}.aggregation-container .color-search-checkbox .checkIcon{width:1rem;height:1rem;min-width:1rem;min-height:1rem;font-size:1rem;line-height:1rem;color:#fff}.aggregation-container .color-search-checkbox:hover{transform:scale(1.3)}.aggregation-container .mat-checkbox-ripple .mat-ripple-element,.aggregation-container .mat-checkbox-checked.mat-accent .mat-checkbox-background{background-color:#33e3b7!important}.aggregation-container .mat-checkbox-ripple .mat-ripple-element{position:fixed;left:inherit;top:inherit;transform:translate(-3px,-3px)!important}.aggregation-container mat-checkbox .mat-checkbox-background{background-color:#d9dce2!important}.aggregation-container mat-checkbox .mat-checkbox-inner-container{transform:scale(1.1)}.aggregation-container .justify-items-center{justify-items:center}.aggregation-container .more{display:flex;justify-content:center}.aggregation-container .btn-more{border-bottom-width:2px;--tw-border-opacity: 1;border-color:rgba(217,220,226,var(--tw-border-opacity));background:none;border:none;margin:0;padding:0;color:#00f}.rtl mat-checkbox .mat-checkbox-inner-container{margin-right:0!important;margin-left:8px!important}\n"], components: [{ type: i7$2.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: CutomeVocViewerComponent, selector: "lib-cutome-voc-viewer", inputs: ["type", "group"] }, { type: CustomPpViewerComponent, selector: "lib-custom-pp-viewer", inputs: ["pageProvider", "group", "config"] }, { type: CustomDocumentViewerComponent, selector: "lib-custom-document-viewer", inputs: ["pageProvider", "group"] }, { type: DepartmentViewerComponent, selector: "cts-department-viewer", inputs: ["label", "value", "dropdownId", "vertical", "withOutLabel", "noStyle"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4$1.NgSwitch, selector: "[ngSwitch]", inputs: ["ngSwitch"] }, { type: i4$1.NgSwitchCase, selector: "[ngSwitchCase]", inputs: ["ngSwitchCase"] }, { type: i4$1.NgSwitchDefault, selector: "[ngSwitchDefault]" }, { type: i2$2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltipPosition", "matTooltipDisabled", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { type: i4$1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
12017
12013
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicFilterComponent, decorators: [{
|
|
12018
12014
|
type: Component,
|
|
12019
12015
|
args: [{
|
|
@@ -12953,7 +12949,7 @@ class TableComponent {
|
|
|
12953
12949
|
}
|
|
12954
12950
|
}
|
|
12955
12951
|
TableComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TableComponent, deps: [{ token: NuxeoService }, { token: AppConfigService }, { token: TranslationService }], target: i0.ɵɵFactoryTarget.Component });
|
|
12956
|
-
TableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TableComponent, selector: "cts-table", inputs: { rows: "rows", columns: "columns", responsiveColumns: "responsiveColumns", entityType: "entityType", prefix: "prefix", pageCount: "pageCount", totalRecords: "totalRecords", rowCursor: "rowCursor", fullWidth: "fullWidth", vocItemTranslationPrefix: "vocItemTranslationPrefix", tableMode: "tableMode", tableActions: "tableActions", format: "format", defultSort: "defultSort", highlightSelectedCard: "highlightSelectedCard", multiSelectRows: "multiSelectRows", customFirstRow: "customFirstRow", showActionsAsMenu: "showActionsAsMenu" }, outputs: { onRowSelected: "onRowSelected", onRowIndexSelected: "onRowIndexSelected", onIconSelected: "onIconSelected", actionOnRow: "actionOnRow", onSorting: "onSorting", onMultiRowSelected: "onMultiRowSelected" }, ngImport: i0, template: "<div class=\"iner-table-container\" [style]=\"'width:' + tableWidth\" *ngIf=\"tableMode === 'list' && !responsiveView\">\r\n <ngx-datatable\r\n [ngClass]=\"{'overflowVisible': customFirstRow}\"\r\n class=\"large-table\"\r\n [rows]=\"rows\"\r\n [summaryRow]=\"customFirstRow\"\r\n [columnMode]=\"'force'\"\r\n [externalSorting]=\"true\"\r\n (activate)=\"rowDetails($event)\"\r\n (select)=\"onSelect($event)\"\r\n (sort)=\"onSort($event)\"\r\n (window:resize)=\"assignTableColumns($event)\"\r\n [rowHeight]=\"'auto'\"\r\n [selected]=\"selected\"\r\n [selectionType]=\"multiSelectRows ? 'checkbox' : 'single'\"\r\n [sorts]=\"[{ prop: defultSort?.name, dir: defultSort?.dir }]\"\r\n >\r\n\r\n <ngx-datatable-column\r\n *ngIf=\"multiSelectRows\"\r\n [width]=\"30\"\r\n [sortable]=\"false\"\r\n [prop]=\"''\"\r\n [canAutoResize]=\"false\"\r\n [draggable]=\"false\"\r\n [resizeable]=\"false\"\r\n>\r\n <ng-template\r\n ngx-datatable-header-template\r\n let-value=\"value\"\r\n let-allRowsSelected=\"allRowsSelected\"\r\n let-selectFn=\"selectFn\"\r\n >\r\n <!-- <input class=\"checkbox-input\" type=\"checkbox\" [checked]=\"allRowsSelected\" (change)=\"selectFn(!allRowsSelected)\" /> -->\r\n <mat-checkbox color=\"primary\" [checked]=\"allRowsSelected\" (change)=\"selectFn(!allRowsSelected)\">\r\n </mat-checkbox>\r\n </ng-template>\r\n <ng-template\r\n ngx-datatable-cell-template\r\n let-value=\"value\"\r\n let-isSelected=\"isSelected\"\r\n let-onCheckboxChangeFn=\"onCheckboxChangeFn\"\r\n >\r\n <!-- <input class=\"checkbox-input\" type=\"checkbox\" [checked]=\"isSelected\" (change)=\"onCheckboxChangeFn($event)\" /> -->\r\n <mat-checkbox color=\"primary\" [checked]=\"isSelected\" (change)=\"onCheckboxChangeFn(!allRowsSelected)\">\r\n </mat-checkbox>\r\n </ng-template>\r\n</ngx-datatable-column>\r\n <!-- | translate -->\r\n <ng-container *ngFor=\"let column of tableColumns; let i = index\">\r\n <ng-container *permission=\"{name: column.permission}\">\r\n <ngx-datatable-column *ngIf=\"column.display\" [sortable]=\"column.sortable\"\r\n [name]=\"prefix + column.name | translate\" [prop]=\"column.prop\" [resizeable]=\"false\" [draggable]=\"false\"\r\n [maxWidth]=\"column.size\" [headerClass]=\"column.headerClass ? column.headerClass : ''\"\r\n [summaryTemplate]=\"(customFirstRow) ? customRowTemplate : null\">\r\n <ng-template let-row=\"row\" let-value=\"value\" let-index=\"index\" ngx-datatable-cell-template>\r\n <ng-container *ngIf=\"column.type === 'text'\">\r\n <div class=\"cell-text-wrapper\">\r\n {{ value ? value : \"--\" }}\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column.type === 'vocabulary'\">\r\n <div class=\"cell-text-wrapper\">\r\n <cts-dropdown-viewer [withOutLabel]=\"true\" [value]=\"value\" [dropdownId]=\"column.vocabularyId\">\r\n </cts-dropdown-viewer>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column.type === 'VocCell'\">\r\n <div class=\"cell-text-wrapper\">\r\n {{ (value ? column.vocabularyId + '.' + value : \"--\") | translate }}\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column.type === 'VocItem'\">\r\n <div class=\"cell-text-wrapper\">\r\n {{ vocItemTranslationPrefix + value | translate }}\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.type === 'department'\">\r\n <div class=\"cell-text-wrapper\">\r\n <cts-department-viewer [noStyle]=\"true\" [value]=\"value\">\r\n </cts-department-viewer>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column.type === 'status'\">\r\n <div class=\"status-wrapper\">\r\n <span class=\"value {{ value }}\">\r\n <span *ngIf=\"statusIcons && statusIcons !== {}\" class=\"status-icon {{statusIcons[value]}}\"></span>\r\n {{\"STATS.\" + value | translate }}\r\n </span>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column.type === 'role'\">\r\n <div class=\"cell-text-wrapper\">\r\n {{ \"role.\" + (value ? value : \"--\") | translate }}\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column.type === 'actions' && rows.length !== 0\">\r\n <div [ngClass]=\"disabledActions ? 'disabled-actions-wrapper' : 'actions-wrapper'\" *ngIf=\"!showActionsAsMenu\">\r\n <!-- <span class=\"bi bi-trash delete-icon\" (click)=\"performAction(row , 'delete')\"></span> -->\r\n <i\r\n class=\"bi bi-pencil-square edit-icon\"\r\n matTooltip=\"{{ 'UPDATE' | translate }}\"\r\n (click)=\"performAction(row, 'edit')\"\r\n *ngIf=\"entityType === 'voc-table'\"\r\n ></i>\r\n <i\r\n class=\"bi bi-trash\"\r\n matTooltip=\"{{ 'delete' | translate }}\"\r\n (click)=\"performAction(row, 'delete')\"\r\n *ngIf=\"\r\n entityType === 'voc-table' || entityType === 'department' ||\r\n entityType === 'signers'\r\n \"></i>\r\n\r\n <i class=\"bi bi-plus-square\" matTooltip=\"{{ 'USER_MANGMENT.addToDepartment' | translate }}\"\r\n (click)=\"performAction(row, 'delete')\" *ngIf=\"entityType === 'users' && row.isInitial\"></i>\r\n\r\n <span *ngFor=\"let action of column.actions\">\r\n <i *permission=\"{ name: action.permission, entity: row , user: nuxeoService.nuxeoClient.user}\"\r\n class=\"{{ action.icon }}\" matTooltip=\"{{ action.tooltip | translate }}\"\r\n (click)=\"performAction(row, action.actionName)\"></i>\r\n </span>\r\n\r\n <!-- <i\r\n *permission=\"{ name: 'registerCorrespondance', entity: row }\"\r\n class=\"bi bi-box-arrow-in-right\"\r\n matTooltip=\"{{ 'LISTING.REGISTER' | translate }}\"\r\n (click)=\"performAction(row, 'register')\"\r\n ></i>\r\n <i\r\n *permission=\"{ name: 'sendCorrespondance', entity: row }\"\r\n class=\"bi bi-envelope\"\r\n matTooltip=\"{{ 'LISTING.SEND' | translate }}\"\r\n (click)=\"performAction(row, 'send')\"\r\n ></i>\r\n <i\r\n *permission=\"{ name: 'closeCorrespondance', entity: row }\"\r\n class=\"bi bi-x-circle\"\r\n matTooltip=\"{{ 'LISTING.CLOSE' | translate }}\"\r\n (click)=\"performAction(row, 'close')\"\r\n ></i>\r\n <i\r\n *permission=\"{ name: 'archiveCorrespondance', entity: row }\"\r\n class=\"bi bi-folder-symlink\"\r\n matTooltip=\"{{ 'LISTING.ARCHIVE' | translate }}\"\r\n (click)=\"performAction(row, 'archive')\"\r\n ></i> -->\r\n </div>\r\n <div [ngClass]=\"disabledActions ? 'disabled-actions-wrapper' : 'actions-wrapper'\" *ngIf=\"showActionsAsMenu\">\r\n <button class=\"action-menu-trigger\" [matMenuTriggerFor]=\"menu\" [disabled]=\"disabledActions\">\r\n <i class=\"bi bi-three-dots-vertical\"></i>\r\n </button>\r\n <mat-menu #menu=\"matMenu\" class=\"datatable-actions-menu\">\r\n <button mat-menu-item (click)=\"performAction(row, 'edit')\" *ngIf=\"entityType === 'voc-table'\">\r\n <i class=\"bi bi-pencil-square edit-icon\"></i>\r\n <span class=\"action-text\">{{ 'UPDATE' | translate }}</span>\r\n </button>\r\n <button mat-menu-item (click)=\"performAction(row, 'delete')\" *ngIf=\"\r\n entityType === 'voc-table' || entityType === 'department' ||\r\n entityType === 'signers'\r\n \">\r\n <i class=\"bi bi-trash\"></i>\r\n <span class=\"action-text\">{{ 'delete' | translate }}</span>\r\n </button>\r\n <button mat-menu-item (click)=\"performAction(row, 'delete')\" *ngIf=\"entityType === 'users' && row.isInitial\">\r\n <i class=\"bi bi-plus-square\"></i>\r\n <span class=\"action-text\">{{ 'USER_MANGMENT.addToDepartment' | translate }}</span>\r\n </button>\r\n <ng-conttainer *ngFor=\"let action of column.actions\">\r\n <button (click)=\"performAction(row, action.actionName)\" *permission=\"{ name: action.permission, entity: row , user: nuxeoService.nuxeoClient.user}\">\r\n <i class=\"{{ action.icon }}\"></i>\r\n <span class=\"action-text\">{{ action.tooltip | translate }}</span>\r\n </button>\r\n </ng-conttainer>\r\n </mat-menu>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column.type === 'date'\">\r\n <div class=\"cell-text-wrapper\">\r\n <cts-date-viewer [withOutLabel]=\"true\" [value]=\"value\"></cts-date-viewer>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.type === 'custom'\">\r\n <cts-dynamic-column [id]=\"column.template\" [column]=\"column\" [context]=\"row\">\r\n </cts-dynamic-column>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column.type === 'direction'\">\r\n <div\r\n (click)=\"iconSelected($event, row)\"\r\n class=\"status-wrapper {{ value }} {{ row.state }}\"\r\n >\r\n <span class=\"iner-status-wrapper\" matTooltip=\"{{ 'STATS.' + row.state | translate }}\">\r\n <ng-container *permission=\"{ name: 'isFavorite', entity: row }\" >\r\n <span class=\"fav-icon-indicator bi bi-star-fill\"></span>\r\n </ng-container>\r\n <i\r\n class=\"{{directionIcons ? directionIcons['incoming'] : 'bi bi-box-arrow-down'}}\"\r\n *ngIf=\"row.type === 'IncomingCorrespondence'\"\r\n ></i>\r\n <i\r\n class=\"{{directionIcons ? directionIcons['outgoing'] : 'bi bi-box-arrow-up outgoing'}}\"\r\n *ngIf=\"row.type === 'OutgoingCorrespondence'\"\r\n ></i>\r\n <i\r\n class=\"{{directionIcons ? directionIcons['internal'] : 'bi bi-box-arrow-right internal'}}\"\r\n *ngIf=\"row.type === 'InternalCorrespondence'\"\r\n ></i>\r\n </span>\r\n <!-- <span class=\"value {{ value }}\">{{ \"STATS.\" + value | translate }}</span> -->\r\n </div>\r\n </ng-container>\r\n \r\n </ng-template>\r\n <ng-template #customRowTemplate let-row=\"row\" let-value=\"value\" ngx-datatable-cell-template>\r\n <div class=\"w-full flex items-center justify-center overflow-visible\">\r\n <cts-dynamic-column [id]=\"column.custom1stCellTemplate\" [column]=\"column\" [context]=\"row\">\r\n </cts-dynamic-column>\r\n </div>\r\n </ng-template>\r\n </ngx-datatable-column>\r\n </ng-container>\r\n </ng-container>\r\n </ngx-datatable>\r\n</div>\r\n\r\n<div *ngIf=\"responsiveView && tableMode !== 'card'\" (window:resize)=\"assignTableColumns($event)\">\r\n <div class=\"dynamic-cards-container\">\r\n <div class=\"single-card\" [ngClass]=\"{'selected-card': highlightSelectedCard && row?.isSelected}\"\r\n *ngFor=\"let row of rows\">\r\n <div class=\"memo-title\">\r\n <span>\r\n {{ row.properties.referenceNumber }}\r\n </span>\r\n <span class=\"action-wrap\">\r\n <!-- <div *ngIf=\"property.type === 'actions' && rows.length !== 0\" class=\"actions-wrapper\">\r\n <i class=\"bi bi-pencil-square edit-icon\" matTooltip=\"{{ 'UPDATE' | translate }}\"\r\n (click)=\"performAction(row, 'edit')\" *ngIf=\"entityType === 'voc-table'\"></i>\r\n <i class=\"bi bi-trash\" matTooltip=\"{{ 'delete' | translate }}\" (click)=\"performAction(row, 'delete')\"\r\n *ngIf=\"\r\n entityType === 'voc-table' || entityType === 'department' ||\r\n entityType === 'signers'\r\n \"></i>\r\n\r\n <i class=\"bi bi-plus-square\" matTooltip=\"{{ 'USER_MANGMENT.addToDepartment' | translate }}\"\r\n (click)=\"performAction(row, 'delete')\" *ngIf=\"entityType === 'users' && row.isInitial\"></i>\r\n\r\n <span *ngFor=\"let action of property.actions\">\r\n <i *permission=\"{ name: action.permission, entity: row , user: nuxeoService.nuxeoClient.user}\"\r\n class=\"{{ action.icon }}\" matTooltip=\"{{ action.tooltip | translate }}\"\r\n (click)=\"performAction(row, action.actionName)\"></i>\r\n </span>\r\n </div> -->\r\n <span class=\"action\" *ngFor=\"let action of tableActions\">\r\n <i *permission=\"{ name: action.permission, entity: row , user: nuxeoService.nuxeoClient.user}\"\r\n class=\"{{ action.icon }}\" matTooltip=\"{{ action.tooltip | translate }}\"\r\n (click)=\"performAction(row, action.actionName)\"></i>\r\n </span>\r\n </span>\r\n </div>\r\n <div *ngIf=\"tableColumns.length > 1\">\r\n <div class=\"memo-body\" *ngFor=\"let property of tableColumns\" (click)=\"cardSelected(row)\">\r\n <div class=\"key\">{{ prefix + property.key | translate }}</div>\r\n <div class=\"value\">\r\n <div class=\"text\" *ngIf=\"property.type === 'text'\">\r\n {{ row.properties[property.value]}}\r\n </div>\r\n <div class=\"text\" *ngIf=\"property.type === 'owner'\">\r\n {{ row.properties[property.owner]?.[property.value] }}\r\n </div>\r\n <div class=\"text\" *ngIf=\"property.type === 'date'\">\r\n {{ row.properties[property.value] | localizedDate:format:(isArabic? 'ar-AR' : 'en-US') }}\r\n <!-- <cts-date-viewer [withOutLabel]=\"true\" [value]=\"row.properties[property.value]\" ></cts-date-viewer> -->\r\n </div>\r\n <div *ngIf=\"property.type === 'status'\" class=\"value {{ row[property.value]}}\">{{\r\n \"STATS.\" + row[property.value] | translate\r\n }}</div>\r\n <div *ngIf=\"property.type === 'vocabulary'\" class=\"cell-text-wrapper\">\r\n <cts-dropdown-viewer [withOutLabel]=\"true\" [value]=\"row.properties[property.value]\"\r\n [dropdownId]=\"property.vocabularyId\">\r\n </cts-dropdown-viewer>\r\n </div>\r\n <div *ngIf=\"property.type === 'direction'\" (click)=\"iconSelected($event, row)\"\r\n class=\"status-wrapper {{ property.value }} {{ row.state }}\">\r\n <span class=\"iner-status-wrapper\" matTooltip=\"{{ 'STATS.' + row.state | translate }}\">\r\n <ng-container *permission=\"{ name: 'isFavorite', entity: row }\">\r\n <span class=\"fav-icon-indicator bi bi-star-fill\"></span>\r\n </ng-container>\r\n <i class=\"bi bi-box-arrow-down\" *ngIf=\"row.type === 'IncomingCorrespondence'\"></i>\r\n <i class=\"bi bi-box-arrow-up outgoing\" *ngIf=\"row.type === 'OutgoingCorrespondence'\"></i>\r\n <i class=\"bi bi-box-arrow-right internal\" *ngIf=\"row.type === 'InternalCorrespondence'\"></i>\r\n </span>\r\n </div>\r\n <div *ngIf=\"property.type === 'custom'\">\r\n <cts-dynamic-column [id]=\"property.template\" [column]=\"property\" [context]=\"row\">\r\n </cts-dynamic-column>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"iner-card-container {{entityType}}\" (click)=\"cardSelected(row)\" *ngIf=\"tableColumns.length === 1\">\r\n <cts-dynamic-column [id]=\"columns[0].template\" [column]=\"columns[0]\" [context]=\"row\">\r\n </cts-dynamic-column>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"tableMode === 'card'\">\r\n <div class=\"cards-container\">\r\n <div class=\"single-card\" *ngFor=\"let row of rows; let i = index\">\r\n <div class=\"memo-title\">\r\n <span>\r\n {{ row.properties.referenceNumber }}\r\n </span>\r\n <span class=\"action-wrap\">\r\n <span class=\"action\" *ngFor=\"let action of tableActions\">\r\n <i *permission=\"{ name: action.permission, entity: row , user: nuxeoService.nuxeoClient.user}\"\r\n class=\"{{ action.icon }}\" matTooltip=\"{{ action.tooltip | translate }}\"\r\n (click)=\"performAction(row, action.actionName)\"></i>\r\n </span>\r\n <button *permission=\"{ name: 'deleteMemo', entity: row , user: nuxeoService.nuxeoClient.user}\"\r\n (click)=\"performAction(row, 'deleteMemo')\">\r\n <i class=\"bi bi-trash\" matTooltip=\"{{ 'LISTING.ONLY_DELETE' | translate }}\"></i>\r\n </button>\r\n <button *permission=\"{ name: 'terminateDelegation', entity: row , user: nuxeoService.nuxeoClient.user}\"\r\n (click)=\"performAction(row, 'terminateDelegation')\">\r\n <i class=\"bi bi-trash\" matTooltip=\"{{ 'LISTING.CANCEL' | translate }}\"></i>\r\n </button>\r\n <span class=\"publish-state\"\r\n *permission=\"{ name: 'memoPublished', entity: row , user: nuxeoService.nuxeoClient.user}\">\r\n {{ \"MEMOS.PUBLISHED\" | translate }}\r\n </span>\r\n <span class=\"publish-state\"\r\n *permission=\"{ name: 'delegationFinished', entity: row , user: nuxeoService.nuxeoClient.user}\">\r\n {{ \"delegations.finished\" | translate }}\r\n </span>\r\n <span class=\"publish-state\"\r\n *permission=\"{ name: 'delegationActive', entity: row , user: nuxeoService.nuxeoClient.user}\">\r\n {{ \"delegations.active\" | translate }}\r\n </span>\r\n </span>\r\n </div>\r\n <div class=\"memo-body\" *ngFor=\"let property of columns\" (click)=\"cardSelected(row);cardFocused(i)\">\r\n <div class=\"key\" *ngIf=\"property.type !== 'default'\">{{ prefix + property.key | translate }}</div>\r\n <ng-container *ngIf=\"property.type === 'default'\">\r\n <div class=\"key\"\r\n *permission=\"{ name: 'internalIsEnabled', entity: row , user: nuxeoService.nuxeoClient.user}\">\r\n {{ prefix + property.key | translate }}\r\n </div>\r\n </ng-container>\r\n <div class=\"value\">\r\n <div class=\"text\" *ngIf=\"property.type === 'text'\">\r\n {{ row.properties[property.value] }}\r\n </div>\r\n <div class=\"text\" *ngIf=\"property.type === 'user'\">\r\n {{ row.properties[property.value].fullName }}\r\n </div>\r\n <div class=\"text\" *ngIf=\"property.type === 'date'\">\r\n {{row.properties[property.value] | localizedDate:format:(isArabic? 'ar-AR' : 'en-US')}}\r\n <!-- <cts-date-viewer [withOutLabel]=\"true\" [value]=\"row.properties[property.value]\" ></cts-date-viewer> -->\r\n </div>\r\n <div class=\"text\" *ngIf=\"property.type === 'boolean'\">\r\n {{ (row.properties[property.value] ? 'Yes':'No') | translate }}\r\n </div>\r\n <ng-container *ngIf=\"property.type === 'default'\">\r\n <div class=\"text\"\r\n *permission=\"{ name: 'internalIsEnabled', entity: row , user: nuxeoService.nuxeoClient.user}\">\r\n {{ row.properties[property.value] }}\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"property.type === 'custom'\">\r\n <div class=\"text\" *ngFor=\"let item of row.properties[property.value]\">\r\n {{ item | translate }} {{\", \" }}\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"tableMode === 'dynamicCard'\">\r\n <div class=\"cards-container\">\r\n <div class=\"single-card\" [ngClass]=\"{'selected-card': highlightSelectedCard && row?.isSelected}\"\r\n *ngFor=\"let row of rows\">\r\n <div *ngIf=\"columns.length > 1\">\r\n <div class=\"memo-body\" *ngFor=\"let property of columns\" (click)=\"cardSelected(row)\">\r\n <div class=\"key\">{{ prefix + property.key | translate }}</div>\r\n <div class=\"value\">\r\n <div class=\"text\" *ngIf=\"property.type === 'text'\">\r\n {{ row.properties[property.value] }}\r\n </div>\r\n <div class=\"text\" *ngIf=\"property.type === 'date'\">\r\n {{ row.properties[property.value] | localizedDate:format:(isArabic? 'ar-AR' : 'en-US') }}\r\n <!-- <cts-date-viewer [withOutLabel]=\"true\" [value]=\"row.properties[property.value]\" ></cts-date-viewer> -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"iner-card-container {{entityType}}\" (click)=\"cardSelected(row)\" *ngIf=\"columns.length === 1\">\r\n <cts-dynamic-column [id]=\"columns[0].template\" [column]=\"columns[0]\" [context]=\"row\">\r\n </cts-dynamic-column>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.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}.ngx-datatable{border:1px solid #eef1f5;border-radius:5px}.ngx-datatable .datatable-header{font-weight:bold;width:100%!important;height:50px!important;background-color:#eef1f5;color:#9aa4ac;font-size:14px}.ngx-datatable .datatable-header .datatable-header-inner{width:100%!important;height:100%;padding:0 20px}.ngx-datatable .datatable-header .datatable-header-inner .datatable-row-center{width:100%!important;display:flex;justify-content:space-between;align-items:center}.ngx-datatable .datatable-header .datatable-header-inner .datatable-row-center .datatable-header-cell .sort-btn{margin:5px 5px 0;width:16px;height:16px}.ngx-datatable .datatable-header .datatable-header-inner .datatable-row-center .datatable-header-cell .sort-btn:before{content:\"\\f127\";display:inline-block;font-family:bootstrap-icons!important;font-style:normal;font-weight:normal!important;font-variant:normal;text-transform:none;line-height:1;vertical-align:-.125em;-webkit-font-smoothing:antialiased}.ngx-datatable .datatable-header .datatable-header-inner .datatable-row-center .datatable-header-cell .datatable-icon-up.sort-btn:before{content:\"\\f57b\";color:#000;font-size:16px}.ngx-datatable .datatable-header .datatable-header-inner .datatable-row-center .datatable-header-cell .datatable-icon-down.sort-btn:before{content:\"\\f574\";color:#000;font-size:16px}.ngx-datatable .datatable-header .datatable-header-inner .datatable-row-center .datatable-header-cell .datatable-header-cell-template-wrap{width:100%;height:100%;display:flex;align-items:center;justify-content:center;white-space:pre-wrap}.ngx-datatable .datatable-header .datatable-header-inner .datatable-row-center .datatable-header-cell .datatable-header-cell-template-wrap .datatable-header-cell-wrapper{display:flex}.ngx-datatable .datatable-header .datatable-header-inner .datatable-row-center .datatable-header-cell .datatable-header-cell-template-wrap .datatable-header-cell-wrapper .datatable-header-cell-label{text-align:center}.ngx-datatable .datatable-header .datatable-header-inner .datatable-row-center .datatable-header-cell .datatable-header-cell-template-wrap .checkbox-input{z-index:99}.ngx-datatable .datatable-body .empty-row{text-align:center}.ngx-datatable .datatable-body .datatable-scroll{width:100%!important}.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row{display:flex!important;min-height:50px!important;overflow:visible!important}.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-row-center{overflow:visible!important}.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-row-center .datatable-body-cell{overflow:visible!important}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row{height:50px;font-size:14px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row{width:100%!important;height:100%}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center{width:100%!important;display:flex;justify-content:space-between;padding:0 20px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell{min-height:50px;display:flex;align-items:center;overflow:hidden}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .datatable-body-cell-label,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .datatable-body-cell-label{width:100%;display:flex;justify-content:center}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .datatable-body-cell-label .checkbox-input,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .datatable-body-cell-label .checkbox-input{z-index:99}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .datatable-body-cell-label .cell-text-wrapper,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .datatable-body-cell-label .cell-text-wrapper{text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 5px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .iner-status-wrapper,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .iner-status-wrapper{position:relative}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .iner-status-wrapper .fav-icon-indicator,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .iner-status-wrapper .fav-icon-indicator{font-size:12px;position:absolute;top:-5px;right:-10px;color:#ebb98e}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .value,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .value{display:flex;justify-content:center;align-items:center;border-radius:5px;width:100px;height:25px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .value .status-icon,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .value .status-icon{margin-inline-end:5px;font-size:16px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .draft,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .draft{background-color:#596973;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .inProgress,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .inProgress{background-color:#3c3cf0;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .registered,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .registered{background-color:#5a1496;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .archived,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .archived{background-color:#fbb62c;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .closed,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .closed{background-color:#00dca5;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .approved,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .approved{background-color:#06a57e;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .assigned,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .assigned{background-color:#fd6670;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .sent,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .sent{background-color:#3c3cf0;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .under_revision,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .under_revision{background:#689be7;color:#e9f1fd}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .rejected,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .rejected{background-color:#fd6670;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .under_sign,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .under_sign{background-color:#dda722;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .redirectSelection,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .redirectSelection{background-color:#28b994;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .redirect,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .redirect{background-color:#e38888;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper.Incoming,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper.Incoming{color:#00dca5;font-size:30px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper.Outgoing,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper.Outgoing{color:#fbb62c;font-size:30px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper.Internal,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper.Internal{color:#3c3cf0;font-size:30px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper.internal,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper.internal{color:#3c3cf0;font-size:30px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper{width:100%}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .bi,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .bi{font-size:25px;cursor:pointer;color:#465573;margin:0 5px!important}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .bi:hover,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .bi:hover{color:#2e62df!important;font-size:26px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .datatable-actions-menu button,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .datatable-actions-menu button{display:flex;color:#5171a6;font-size:16px;height:45px;align-items:center;padding:0 10px;width:100%}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .datatable-actions-menu button i,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .datatable-actions-menu button i{font-size:20px;padding:0;display:flex;align-items:center}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .datatable-actions-menu button .action-text,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .datatable-actions-menu button .action-text{padding:0 5px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .datatable-actions-menu button:hover,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .datatable-actions-menu button:hover{background-color:#e6ebf2}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .disabled-actions-wrapper,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .disabled-actions-wrapper{width:100%}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .disabled-actions-wrapper .bi,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .disabled-actions-wrapper .bi{font-size:25px;cursor:not-allowed;color:#465573;margin:0 5px!important;opacity:.7}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper:nth-child(even){background-color:#f4f6f8}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper:hover{background-color:#eef1f5}.cards-container{display:flex;flex-wrap:wrap;justify-content:center}.cards-container .single-card{padding:15px;border:1px solid rgba(180,186,198,.2);border-radius:3px;min-width:270px;width:24%;margin:0 5px 10px;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;cursor:pointer}.cards-container .single-card .memo-title{font-size:14px;font-weight:bold;color:#465573;border-bottom:1px solid lightgray;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center}.cards-container .single-card .memo-title .action-wrap .action{margin:0 5px;cursor:pointer}.cards-container .single-card .memo-title .action-wrap .action i{font-size:16px}.cards-container .single-card .memo-title .action-wrap .action i:hover{color:#00f}.cards-container .single-card .memo-title .action-wrap .publish-state{font-size:12px;color:#00dca5;font-weight:bold}.cards-container .single-card .memo-title .action-wrap button{border:none;color:#465573;background-color:transparent}.cards-container .single-card .memo-title .action-wrap button i{font-size:16px}.cards-container .single-card .memo-title .action-wrap button i:hover{color:#00f}.cards-container .single-card .memo-body{display:flex;padding:0 10px}.cards-container .single-card .memo-body .key{width:50%;font-size:12px;color:#9aa4ac}.cards-container .single-card .memo-body .value{width:50%;font-size:12px}.cards-container .single-card .memo-body .value .text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cards-container .single-card:hover{background-color:#f6f7f8}.cards-container .single-card:focus{background-color:#f6f7f8}.cards-container .selected-card{background-color:#f6f7f8}.rtl .ngx-datatable .datatable-body .status-wrapper .fav-icon-indicator{left:-10px;top:15px!important;right:auto!important}.dynamic-cards-container{display:flex;flex-wrap:wrap;justify-content:center}.dynamic-cards-container .single-card{padding:15px;border:1px solid rgba(180,186,198,.2);border-radius:3px;min-width:306px;width:24%;margin:0 5px 10px;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;cursor:pointer}.dynamic-cards-container .single-card .memo-title{font-size:14px;font-weight:bold;color:#465573;border-bottom:1px solid lightgray;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center}.dynamic-cards-container .single-card .memo-title .action-wrap .action{cursor:pointer}.dynamic-cards-container .single-card .memo-title .action-wrap .action i{font-size:16px}.dynamic-cards-container .single-card .memo-title .action-wrap .action i:hover{color:#00f}.dynamic-cards-container .single-card .memo-title .action-wrap .publish-state{font-size:12px;color:#00dca5;font-weight:bold}.dynamic-cards-container .single-card .memo-title .action-wrap button{border:none;color:#465573;background-color:transparent}.dynamic-cards-container .single-card .memo-title .action-wrap button i{font-size:16px}.dynamic-cards-container .single-card .memo-title .action-wrap button i:hover{color:#00f}.dynamic-cards-container .single-card .memo-body{display:flex;padding:0 10px}.dynamic-cards-container .single-card .memo-body .key{width:58%;font-size:12px;color:#9aa4ac;margin-bottom:4px}.dynamic-cards-container .single-card .memo-body .value{width:58%;font-size:12px}.dynamic-cards-container .single-card .memo-body .value .text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dynamic-cards-container .single-card .memo-body .draft{background-color:#596973;color:#fff;width:24%}.dynamic-cards-container .single-card .memo-body .inProgress{background-color:#3c3cf0;color:#fff;width:51%}.dynamic-cards-container .single-card .memo-body .registered{background-color:#5a1496;color:#fff;width:51%}.dynamic-cards-container .single-card .memo-body .archived{background-color:#fbb62c;color:#fff;width:40%}.dynamic-cards-container .single-card .memo-body .closed{background-color:#00dca5;color:#fff;width:31%}.dynamic-cards-container .single-card .memo-body .approved{background-color:#06a57e;color:#fff;width:43%}.dynamic-cards-container .single-card .memo-body .assigned{background-color:#fd6670;color:#fff;width:43%}.dynamic-cards-container .single-card .memo-body .sent{background-color:#3c3cf0;color:#fff;width:23%}.dynamic-cards-container .single-card .memo-body .under_revision{background:#689be7;color:#e9f1fd;width:65%}.dynamic-cards-container .single-card .memo-body .rejected{background-color:#fd6670;color:#fff;width:37%}.dynamic-cards-container .single-card .memo-body .under_sign{background-color:#dda722;color:#fff;width:51%}.dynamic-cards-container .single-card:hover{background-color:#f6f7f8}.dynamic-cards-container .single-card:focus{background-color:#f6f7f8}.dynamic-cards-container .selected-card{background-color:#f6f7f8}.overflowVisible{overflow:visible!important}\n"], components: [{ type: i4$2.DatatableComponent, selector: "ngx-datatable", inputs: ["selected", "scrollbarV", "scrollbarH", "rowHeight", "columnMode", "headerHeight", "footerHeight", "externalPaging", "externalSorting", "loadingIndicator", "reorderable", "swapColumns", "sortType", "sorts", "cssClasses", "messages", "groupExpansionDefault", "selectAllRowsOnPage", "virtualization", "summaryRow", "summaryHeight", "summaryPosition", "rowIdentity", "rows", "groupedRows", "groupRowsBy", "columns", "limit", "count", "offset", "targetMarkerTemplate", "selectionType", "rowClass", "selectCheck", "displayCheck", "trackByProp", "treeFromRelation", "treeToRelation"], outputs: ["scroll", "activate", "select", "sort", "page", "reorder", "resize", "tableContextmenu", "treeAction"] }, { type: i7$1.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: DropdownViewerComponent, selector: "cts-dropdown-viewer", inputs: ["label", "value", "dropdownId", "vertical", "withOutLabel"] }, { type: DepartmentViewerComponent, selector: "cts-department-viewer", inputs: ["label", "value", "dropdownId", "vertical", "withOutLabel", "noStyle"] }, { type: i3$1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i3$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: DateViewerComponent, selector: "cts-date-viewer", inputs: ["label", "value", "vertical", "format", "hijri", "withOutLabel"] }, { type: DynamicColumnComponent, selector: "cts-dynamic-column", inputs: ["id", "context", "column"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4$2.DataTableColumnDirective, selector: "ngx-datatable-column", inputs: ["name", "prop", "frozenLeft", "frozenRight", "flexGrow", "resizeable", "comparator", "pipe", "sortable", "draggable", "canAutoResize", "minWidth", "width", "maxWidth", "checkboxable", "headerCheckboxable", "headerClass", "cellClass", "isTreeColumn", "treeLevelIndent", "summaryFunc", "summaryTemplate", "cellTemplate", "headerTemplate", "treeToggleTemplate"] }, { type: i4$2.DataTableColumnHeaderDirective, selector: "[ngx-datatable-header-template]" }, { type: i4$2.DataTableColumnCellDirective, selector: "[ngx-datatable-cell-template]" }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: PermissionsDirective, selector: "[permission]", inputs: ["permission"] }, { type: i2$2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltipPosition", "matTooltipDisabled", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { type: i3$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["matMenuTriggerRestoreFocus", "mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }], pipes: { "translate": i1.TranslatePipe, "localizedDate": LocalizedDatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
12952
|
+
TableComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: TableComponent, selector: "cts-table", inputs: { rows: "rows", columns: "columns", responsiveColumns: "responsiveColumns", entityType: "entityType", prefix: "prefix", pageCount: "pageCount", totalRecords: "totalRecords", rowCursor: "rowCursor", fullWidth: "fullWidth", vocItemTranslationPrefix: "vocItemTranslationPrefix", tableMode: "tableMode", tableActions: "tableActions", format: "format", defultSort: "defultSort", highlightSelectedCard: "highlightSelectedCard", multiSelectRows: "multiSelectRows", customFirstRow: "customFirstRow", showActionsAsMenu: "showActionsAsMenu" }, outputs: { onRowSelected: "onRowSelected", onRowIndexSelected: "onRowIndexSelected", onIconSelected: "onIconSelected", actionOnRow: "actionOnRow", onSorting: "onSorting", onMultiRowSelected: "onMultiRowSelected" }, ngImport: i0, template: "<div class=\"iner-table-container\" [style]=\"'width:' + tableWidth\" *ngIf=\"tableMode === 'list' && !responsiveView\">\r\n <ngx-datatable\r\n [ngClass]=\"{'overflowVisible': customFirstRow}\"\r\n class=\"large-table\"\r\n [rows]=\"rows\"\r\n [summaryRow]=\"customFirstRow\"\r\n [columnMode]=\"'force'\"\r\n [externalSorting]=\"true\"\r\n (activate)=\"rowDetails($event)\"\r\n (select)=\"onSelect($event)\"\r\n (sort)=\"onSort($event)\"\r\n (window:resize)=\"assignTableColumns($event)\"\r\n [rowHeight]=\"'auto'\"\r\n [selected]=\"selected\"\r\n [selectionType]=\"multiSelectRows ? 'checkbox' : 'single'\"\r\n [sorts]=\"[{ prop: defultSort?.name, dir: defultSort?.dir }]\"\r\n >\r\n\r\n <ngx-datatable-column\r\n *ngIf=\"multiSelectRows\"\r\n [width]=\"30\"\r\n [sortable]=\"false\"\r\n [prop]=\"''\"\r\n [canAutoResize]=\"false\"\r\n [draggable]=\"false\"\r\n [resizeable]=\"false\"\r\n>\r\n <ng-template\r\n ngx-datatable-header-template\r\n let-value=\"value\"\r\n let-allRowsSelected=\"allRowsSelected\"\r\n let-selectFn=\"selectFn\"\r\n >\r\n <!-- <input class=\"checkbox-input\" type=\"checkbox\" [checked]=\"allRowsSelected\" (change)=\"selectFn(!allRowsSelected)\" /> -->\r\n <mat-checkbox color=\"primary\" [checked]=\"allRowsSelected\" (change)=\"selectFn(!allRowsSelected)\">\r\n </mat-checkbox>\r\n </ng-template>\r\n <ng-template\r\n ngx-datatable-cell-template\r\n let-value=\"value\"\r\n let-isSelected=\"isSelected\"\r\n let-onCheckboxChangeFn=\"onCheckboxChangeFn\"\r\n >\r\n <!-- <input class=\"checkbox-input\" type=\"checkbox\" [checked]=\"isSelected\" (change)=\"onCheckboxChangeFn($event)\" /> -->\r\n <mat-checkbox color=\"primary\" [checked]=\"isSelected\" (change)=\"onCheckboxChangeFn(!allRowsSelected)\">\r\n </mat-checkbox>\r\n </ng-template>\r\n</ngx-datatable-column>\r\n <!-- | translate -->\r\n <ng-container *ngFor=\"let column of tableColumns; let i = index\">\r\n <ng-container *permission=\"{name: column.permission}\">\r\n <ngx-datatable-column *ngIf=\"column.display\" [sortable]=\"column.sortable\"\r\n [name]=\"prefix + column.name | translate\" [prop]=\"column.prop\" [resizeable]=\"false\" [draggable]=\"false\"\r\n [maxWidth]=\"column.size\" [headerClass]=\"column.headerClass ? column.headerClass : ''\"\r\n [summaryTemplate]=\"(customFirstRow) ? customRowTemplate : null\">\r\n <ng-template let-row=\"row\" let-value=\"value\" let-index=\"index\" ngx-datatable-cell-template>\r\n <ng-container *ngIf=\"column.type === 'text'\">\r\n <div class=\"cell-text-wrapper\">\r\n {{ value ? value : \"--\" }}\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column.type === 'vocabulary'\">\r\n <div class=\"cell-text-wrapper\">\r\n <cts-dropdown-viewer [withOutLabel]=\"true\" [value]=\"value\" [dropdownId]=\"column.vocabularyId\">\r\n </cts-dropdown-viewer>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column.type === 'VocCell'\">\r\n <div class=\"cell-text-wrapper\">\r\n {{ (value ? column.vocabularyId + '.' + value : \"--\") | translate }}\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column.type === 'VocItem'\">\r\n <div class=\"cell-text-wrapper\">\r\n {{ vocItemTranslationPrefix + value | translate }}\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.type === 'department'\">\r\n <div class=\"cell-text-wrapper\">\r\n <cts-department-viewer [noStyle]=\"true\" [value]=\"value\">\r\n </cts-department-viewer>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column.type === 'status'\">\r\n <div class=\"status-wrapper\">\r\n <span class=\"value {{ value }}\">\r\n <span *ngIf=\"statusIcons && statusIcons !== {}\" class=\"status-icon {{statusIcons[value]}}\"></span>\r\n {{\"STATS.\" + value | translate }}\r\n </span>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column.type === 'role'\">\r\n <div class=\"cell-text-wrapper\">\r\n {{ \"role.\" + (value ? value : \"--\") | translate }}\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column.type === 'actions' && rows.length !== 0\">\r\n <div [ngClass]=\"disabledActions ? 'disabled-actions-wrapper' : 'actions-wrapper'\" *ngIf=\"!showActionsAsMenu\">\r\n <!-- <span class=\"bi bi-trash delete-icon\" (click)=\"performAction(row , 'delete')\"></span> -->\r\n <i\r\n class=\"bi bi-pencil-square edit-icon\"\r\n matTooltip=\"{{ 'UPDATE' | translate }}\"\r\n (click)=\"performAction(row, 'edit')\"\r\n *ngIf=\"entityType === 'voc-table'\"\r\n ></i>\r\n <i\r\n class=\"bi bi-trash\"\r\n matTooltip=\"{{ 'delete' | translate }}\"\r\n (click)=\"performAction(row, 'delete')\"\r\n *ngIf=\"\r\n entityType === 'voc-table' || entityType === 'department' ||\r\n entityType === 'signers'\r\n \"></i>\r\n\r\n <i class=\"bi bi-plus-square\" matTooltip=\"{{ 'USER_MANGMENT.addToDepartment' | translate }}\"\r\n (click)=\"performAction(row, 'delete')\" *ngIf=\"entityType === 'users' && row.isInitial\"></i>\r\n\r\n <span *ngFor=\"let action of column.actions\">\r\n <i *permission=\"{ name: action.permission, entity: row , user: nuxeoService.nuxeoClient.user}\"\r\n class=\"{{ action.icon }}\" matTooltip=\"{{ action.tooltip | translate }}\"\r\n (click)=\"performAction(row, action.actionName)\"></i>\r\n </span>\r\n\r\n <!-- <i\r\n *permission=\"{ name: 'registerCorrespondance', entity: row }\"\r\n class=\"bi bi-box-arrow-in-right\"\r\n matTooltip=\"{{ 'LISTING.REGISTER' | translate }}\"\r\n (click)=\"performAction(row, 'register')\"\r\n ></i>\r\n <i\r\n *permission=\"{ name: 'sendCorrespondance', entity: row }\"\r\n class=\"bi bi-envelope\"\r\n matTooltip=\"{{ 'LISTING.SEND' | translate }}\"\r\n (click)=\"performAction(row, 'send')\"\r\n ></i>\r\n <i\r\n *permission=\"{ name: 'closeCorrespondance', entity: row }\"\r\n class=\"bi bi-x-circle\"\r\n matTooltip=\"{{ 'LISTING.CLOSE' | translate }}\"\r\n (click)=\"performAction(row, 'close')\"\r\n ></i>\r\n <i\r\n *permission=\"{ name: 'archiveCorrespondance', entity: row }\"\r\n class=\"bi bi-folder-symlink\"\r\n matTooltip=\"{{ 'LISTING.ARCHIVE' | translate }}\"\r\n (click)=\"performAction(row, 'archive')\"\r\n ></i> -->\r\n </div>\r\n <div [ngClass]=\"disabledActions ? 'disabled-actions-wrapper' : 'actions-wrapper'\" *ngIf=\"showActionsAsMenu\">\r\n <button class=\"action-menu-trigger\" [matMenuTriggerFor]=\"menu\" [disabled]=\"disabledActions\">\r\n <i class=\"bi bi-three-dots-vertical\"></i>\r\n </button>\r\n <mat-menu #menu=\"matMenu\" class=\"datatable-actions-menu\">\r\n <button mat-menu-item (click)=\"performAction(row, 'edit')\" *ngIf=\"entityType === 'voc-table'\">\r\n <i class=\"bi bi-pencil-square edit-icon\"></i>\r\n <span class=\"action-text\">{{ 'UPDATE' | translate }}</span>\r\n </button>\r\n <button mat-menu-item (click)=\"performAction(row, 'delete')\" *ngIf=\"\r\n entityType === 'voc-table' || entityType === 'department' ||\r\n entityType === 'signers'\r\n \">\r\n <i class=\"bi bi-trash\"></i>\r\n <span class=\"action-text\">{{ 'delete' | translate }}</span>\r\n </button>\r\n <button mat-menu-item (click)=\"performAction(row, 'delete')\" *ngIf=\"entityType === 'users' && row.isInitial\">\r\n <i class=\"bi bi-plus-square\"></i>\r\n <span class=\"action-text\">{{ 'USER_MANGMENT.addToDepartment' | translate }}</span>\r\n </button>\r\n <ng-conttainer *ngFor=\"let action of column.actions\">\r\n <button (click)=\"performAction(row, action.actionName)\" *permission=\"{ name: action.permission, entity: row , user: nuxeoService.nuxeoClient.user}\">\r\n <i class=\"{{ action.icon }}\"></i>\r\n <span class=\"action-text\">{{ action.tooltip | translate }}</span>\r\n </button>\r\n </ng-conttainer>\r\n </mat-menu>\r\n </div>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column.type === 'date'\">\r\n <div class=\"cell-text-wrapper\">\r\n <cts-date-viewer [withOutLabel]=\"true\" [value]=\"value\"></cts-date-viewer>\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"column.type === 'custom'\">\r\n <cts-dynamic-column [id]=\"column.template\" [column]=\"column\" [context]=\"row\">\r\n </cts-dynamic-column>\r\n </ng-container>\r\n\r\n <ng-container *ngIf=\"column.type === 'direction'\">\r\n <div\r\n (click)=\"iconSelected($event, row)\"\r\n class=\"status-wrapper {{ value }} {{ row.state }}\"\r\n >\r\n <span class=\"iner-status-wrapper\" matTooltip=\"{{ 'STATS.' + row.state | translate }}\">\r\n <ng-container *permission=\"{ name: 'isFavorite', entity: row }\" >\r\n <span class=\"fav-icon-indicator bi bi-star-fill\"></span>\r\n </ng-container>\r\n <i\r\n class=\"{{directionIcons ? directionIcons['incoming'] : 'bi bi-box-arrow-down'}}\"\r\n *ngIf=\"row.type === 'IncomingCorrespondence'\"\r\n ></i>\r\n <i\r\n class=\"{{directionIcons ? directionIcons['outgoing'] : 'bi bi-box-arrow-up outgoing'}}\"\r\n *ngIf=\"row.type === 'OutgoingCorrespondence'\"\r\n ></i>\r\n <i\r\n class=\"{{directionIcons ? directionIcons['internal'] : 'bi bi-box-arrow-right internal'}}\"\r\n *ngIf=\"row.type === 'InternalCorrespondence'\"\r\n ></i>\r\n </span>\r\n <!-- <span class=\"value {{ value }}\">{{ \"STATS.\" + value | translate }}</span> -->\r\n </div>\r\n </ng-container>\r\n \r\n </ng-template>\r\n <ng-template #customRowTemplate let-row=\"row\" let-value=\"value\" ngx-datatable-cell-template>\r\n <div class=\"w-full flex items-center justify-center overflow-visible\">\r\n <cts-dynamic-column [id]=\"column.custom1stCellTemplate\" [column]=\"column\" [context]=\"row\">\r\n </cts-dynamic-column>\r\n </div>\r\n </ng-template>\r\n </ngx-datatable-column>\r\n </ng-container>\r\n </ng-container>\r\n </ngx-datatable>\r\n</div>\r\n\r\n<div *ngIf=\"responsiveView && tableMode !== 'card'\" (window:resize)=\"assignTableColumns($event)\">\r\n <div class=\"dynamic-cards-container\">\r\n <div class=\"single-card\" [ngClass]=\"{'selected-card': highlightSelectedCard && row?.isSelected}\"\r\n *ngFor=\"let row of rows\">\r\n <div class=\"memo-title\">\r\n <span>\r\n {{ row.properties.referenceNumber }}\r\n </span>\r\n <span class=\"action-wrap\">\r\n <!-- <div *ngIf=\"property.type === 'actions' && rows.length !== 0\" class=\"actions-wrapper\">\r\n <i class=\"bi bi-pencil-square edit-icon\" matTooltip=\"{{ 'UPDATE' | translate }}\"\r\n (click)=\"performAction(row, 'edit')\" *ngIf=\"entityType === 'voc-table'\"></i>\r\n <i class=\"bi bi-trash\" matTooltip=\"{{ 'delete' | translate }}\" (click)=\"performAction(row, 'delete')\"\r\n *ngIf=\"\r\n entityType === 'voc-table' || entityType === 'department' ||\r\n entityType === 'signers'\r\n \"></i>\r\n\r\n <i class=\"bi bi-plus-square\" matTooltip=\"{{ 'USER_MANGMENT.addToDepartment' | translate }}\"\r\n (click)=\"performAction(row, 'delete')\" *ngIf=\"entityType === 'users' && row.isInitial\"></i>\r\n\r\n <span *ngFor=\"let action of property.actions\">\r\n <i *permission=\"{ name: action.permission, entity: row , user: nuxeoService.nuxeoClient.user}\"\r\n class=\"{{ action.icon }}\" matTooltip=\"{{ action.tooltip | translate }}\"\r\n (click)=\"performAction(row, action.actionName)\"></i>\r\n </span>\r\n </div> -->\r\n <span class=\"action\" *ngFor=\"let action of tableActions\">\r\n <i *permission=\"{ name: action.permission, entity: row , user: nuxeoService.nuxeoClient.user}\"\r\n class=\"{{ action.icon }}\" matTooltip=\"{{ action.tooltip | translate }}\"\r\n (click)=\"performAction(row, action.actionName)\"></i>\r\n </span>\r\n </span>\r\n </div>\r\n <div *ngIf=\"tableColumns.length > 1\">\r\n <div class=\"memo-body\" *ngFor=\"let property of tableColumns\" (click)=\"cardSelected(row)\">\r\n <div class=\"key\">{{ prefix + property.key | translate }}</div>\r\n <div class=\"value\">\r\n <div class=\"text\" *ngIf=\"property.type === 'text'\">\r\n {{ row.properties[property.value]}}\r\n </div>\r\n <div class=\"text\" *ngIf=\"property.type === 'owner'\">\r\n {{ row.properties[property.owner]?.[property.value] }}\r\n </div>\r\n <div class=\"text\" *ngIf=\"property.type === 'date'\">\r\n {{ row.properties[property.value] | localizedDate:format:(isArabic? 'ar-AR' : 'en-US') }}\r\n <!-- <cts-date-viewer [withOutLabel]=\"true\" [value]=\"row.properties[property.value]\" ></cts-date-viewer> -->\r\n </div>\r\n <div *ngIf=\"property.type === 'status'\" class=\"value {{ row[property.value]}}\">{{\r\n \"STATS.\" + row[property.value] | translate\r\n }}</div>\r\n <div *ngIf=\"property.type === 'vocabulary'\" class=\"cell-text-wrapper\">\r\n <cts-dropdown-viewer [withOutLabel]=\"true\" [value]=\"row.properties[property.value]\"\r\n [dropdownId]=\"property.vocabularyId\">\r\n </cts-dropdown-viewer>\r\n </div>\r\n <div *ngIf=\"property.type === 'direction'\" (click)=\"iconSelected($event, row)\"\r\n class=\"status-wrapper {{ property.value }} {{ row.state }}\">\r\n <span class=\"iner-status-wrapper\" matTooltip=\"{{ 'STATS.' + row.state | translate }}\">\r\n <ng-container *permission=\"{ name: 'isFavorite', entity: row }\">\r\n <span class=\"fav-icon-indicator bi bi-star-fill\"></span>\r\n </ng-container>\r\n <i class=\"bi bi-box-arrow-down\" *ngIf=\"row.type === 'IncomingCorrespondence'\"></i>\r\n <i class=\"bi bi-box-arrow-up outgoing\" *ngIf=\"row.type === 'OutgoingCorrespondence'\"></i>\r\n <i class=\"bi bi-box-arrow-right internal\" *ngIf=\"row.type === 'InternalCorrespondence'\"></i>\r\n </span>\r\n </div>\r\n <div *ngIf=\"property.type === 'custom'\">\r\n <cts-dynamic-column [id]=\"property.template\" [column]=\"property\" [context]=\"row\">\r\n </cts-dynamic-column>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"iner-card-container {{entityType}}\" (click)=\"cardSelected(row)\" *ngIf=\"tableColumns.length === 1\">\r\n <cts-dynamic-column [id]=\"columns[0].template\" [column]=\"columns[0]\" [context]=\"row\">\r\n </cts-dynamic-column>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"tableMode === 'card'\">\r\n <div class=\"cards-container\">\r\n <div class=\"single-card\" *ngFor=\"let row of rows; let i = index\">\r\n <div class=\"memo-title\">\r\n <span>\r\n {{ row.properties.referenceNumber }}\r\n </span>\r\n <span class=\"action-wrap\">\r\n <span class=\"action\" *ngFor=\"let action of tableActions\">\r\n <i *permission=\"{ name: action.permission, entity: row , user: nuxeoService.nuxeoClient.user}\"\r\n class=\"{{ action.icon }}\" matTooltip=\"{{ action.tooltip | translate }}\"\r\n (click)=\"performAction(row, action.actionName)\"></i>\r\n </span>\r\n <button *permission=\"{ name: 'deleteMemo', entity: row , user: nuxeoService.nuxeoClient.user}\"\r\n (click)=\"performAction(row, 'deleteMemo')\">\r\n <i class=\"bi bi-trash\" matTooltip=\"{{ 'LISTING.ONLY_DELETE' | translate }}\"></i>\r\n </button>\r\n <button *permission=\"{ name: 'terminateDelegation', entity: row , user: nuxeoService.nuxeoClient.user}\"\r\n (click)=\"performAction(row, 'terminateDelegation')\">\r\n <i class=\"bi bi-trash\" matTooltip=\"{{ 'LISTING.CANCEL' | translate }}\"></i>\r\n </button>\r\n <span class=\"publish-state\"\r\n *permission=\"{ name: 'memoPublished', entity: row , user: nuxeoService.nuxeoClient.user}\">\r\n {{ \"MEMOS.PUBLISHED\" | translate }}\r\n </span>\r\n <span class=\"publish-state\"\r\n *permission=\"{ name: 'delegationFinished', entity: row , user: nuxeoService.nuxeoClient.user}\">\r\n {{ \"delegations.finished\" | translate }}\r\n </span>\r\n <span class=\"publish-state\"\r\n *permission=\"{ name: 'delegationActive', entity: row , user: nuxeoService.nuxeoClient.user}\">\r\n {{ \"delegations.active\" | translate }}\r\n </span>\r\n </span>\r\n </div>\r\n <div class=\"memo-body\" *ngFor=\"let property of columns\" (click)=\"cardSelected(row);cardFocused(i)\">\r\n <div class=\"key\" *ngIf=\"property.type !== 'default'\">{{ prefix + property.key | translate }}</div>\r\n <ng-container *ngIf=\"property.type === 'default'\">\r\n <div class=\"key\"\r\n *permission=\"{ name: 'internalIsEnabled', entity: row , user: nuxeoService.nuxeoClient.user}\">\r\n {{ prefix + property.key | translate }}\r\n </div>\r\n </ng-container>\r\n <div class=\"value\">\r\n <div class=\"text\" *ngIf=\"property.type === 'text'\">\r\n {{ row.properties[property.value] }}\r\n </div>\r\n <div class=\"text\" *ngIf=\"property.type === 'user'\">\r\n {{ row.properties[property.value].fullName }}\r\n </div>\r\n <div class=\"text\" *ngIf=\"property.type === 'date'\">\r\n {{row.properties[property.value] | localizedDate:format:(isArabic? 'ar-AR' : 'en-US')}}\r\n <!-- <cts-date-viewer [withOutLabel]=\"true\" [value]=\"row.properties[property.value]\" ></cts-date-viewer> -->\r\n </div>\r\n <div class=\"text\" *ngIf=\"property.type === 'boolean'\">\r\n {{ (row.properties[property.value] ? 'Yes':'No') | translate }}\r\n </div>\r\n <ng-container *ngIf=\"property.type === 'default'\">\r\n <div class=\"text\"\r\n *permission=\"{ name: 'internalIsEnabled', entity: row , user: nuxeoService.nuxeoClient.user}\">\r\n {{ row.properties[property.value] }}\r\n </div>\r\n </ng-container>\r\n <ng-container *ngIf=\"property.type === 'custom'\">\r\n <div class=\"text\" *ngFor=\"let item of row.properties[property.value]\">\r\n {{ item | translate }} {{\", \" }}\r\n </div>\r\n </ng-container>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n\r\n<div *ngIf=\"tableMode === 'dynamicCard'\">\r\n <div class=\"cards-container\">\r\n <div class=\"single-card\" [ngClass]=\"{'selected-card': highlightSelectedCard && row?.isSelected}\"\r\n *ngFor=\"let row of rows\">\r\n <div *ngIf=\"columns.length > 1\">\r\n <div class=\"memo-body\" *ngFor=\"let property of columns\" (click)=\"cardSelected(row)\">\r\n <div class=\"key\">{{ prefix + property.key | translate }}</div>\r\n <div class=\"value\">\r\n <div class=\"text\" *ngIf=\"property.type === 'text'\">\r\n {{ row.properties[property.value] }}\r\n </div>\r\n <div class=\"text\" *ngIf=\"property.type === 'date'\">\r\n {{ row.properties[property.value] | localizedDate:format:(isArabic? 'ar-AR' : 'en-US') }}\r\n <!-- <cts-date-viewer [withOutLabel]=\"true\" [value]=\"row.properties[property.value]\" ></cts-date-viewer> -->\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n <div class=\"iner-card-container {{entityType}}\" (click)=\"cardSelected(row)\" *ngIf=\"columns.length === 1\">\r\n <cts-dynamic-column [id]=\"columns[0].template\" [column]=\"columns[0]\" [context]=\"row\">\r\n </cts-dynamic-column>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: ["@charset \"UTF-8\";.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}.ngx-datatable{border:1px solid #eef1f5;border-radius:5px}.ngx-datatable .datatable-header{font-weight:bold;width:100%!important;height:50px!important;background-color:#eef1f5;color:#9aa4ac;font-size:14px}.ngx-datatable .datatable-header .datatable-header-inner{width:100%!important;height:100%;padding:0 20px}.ngx-datatable .datatable-header .datatable-header-inner .datatable-row-center{width:100%!important;display:flex;justify-content:space-between;align-items:center}.ngx-datatable .datatable-header .datatable-header-inner .datatable-row-center .datatable-header-cell .sort-btn{margin:5px 5px 0;width:16px;height:16px}.ngx-datatable .datatable-header .datatable-header-inner .datatable-row-center .datatable-header-cell .sort-btn:before{content:\"\\f127\";display:inline-block;font-family:bootstrap-icons!important;font-style:normal;font-weight:normal!important;font-variant:normal;text-transform:none;line-height:1;vertical-align:-.125em;-webkit-font-smoothing:antialiased}.ngx-datatable .datatable-header .datatable-header-inner .datatable-row-center .datatable-header-cell .datatable-icon-up.sort-btn:before{content:\"\\f57b\";color:#000;font-size:16px}.ngx-datatable .datatable-header .datatable-header-inner .datatable-row-center .datatable-header-cell .datatable-icon-down.sort-btn:before{content:\"\\f574\";color:#000;font-size:16px}.ngx-datatable .datatable-header .datatable-header-inner .datatable-row-center .datatable-header-cell .datatable-header-cell-template-wrap{width:100%;height:100%;display:flex;align-items:center;justify-content:center;white-space:pre-wrap}.ngx-datatable .datatable-header .datatable-header-inner .datatable-row-center .datatable-header-cell .datatable-header-cell-template-wrap .datatable-header-cell-wrapper{display:flex}.ngx-datatable .datatable-header .datatable-header-inner .datatable-row-center .datatable-header-cell .datatable-header-cell-template-wrap .datatable-header-cell-wrapper .datatable-header-cell-label{text-align:center}.ngx-datatable .datatable-header .datatable-header-inner .datatable-row-center .datatable-header-cell .datatable-header-cell-template-wrap .checkbox-input{z-index:99}.ngx-datatable .datatable-body .empty-row{text-align:center}.ngx-datatable .datatable-body .datatable-scroll{width:100%!important}.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row{display:flex!important;min-height:50px!important;overflow:visible!important}.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-row-center{overflow:visible!important}.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-row-center .datatable-body-cell{overflow:visible!important}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row{height:50px;font-size:14px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row{width:100%!important;height:100%}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center{width:100%!important;display:flex;justify-content:space-between;padding:0 20px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell{min-height:50px;display:flex;align-items:center;overflow:hidden}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .datatable-body-cell-label,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .datatable-body-cell-label{width:100%;display:flex;justify-content:center}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .datatable-body-cell-label .checkbox-input,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .datatable-body-cell-label .checkbox-input{z-index:99}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .datatable-body-cell-label .cell-text-wrapper,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .datatable-body-cell-label .cell-text-wrapper{text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;padding:0 5px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .iner-status-wrapper,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .iner-status-wrapper{position:relative}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .iner-status-wrapper .fav-icon-indicator,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .iner-status-wrapper .fav-icon-indicator{font-size:12px;position:absolute;top:-5px;right:-10px;color:#ebb98e}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .value,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .value{display:flex;justify-content:center;align-items:center;border-radius:5px;width:100px;height:25px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .value .status-icon,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .value .status-icon{margin-inline-end:5px;font-size:16px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .draft,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .draft{background-color:#596973;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .inProgress,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .inProgress{background-color:#3c3cf0;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .registered,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .registered{background-color:#5a1496;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .archived,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .archived{background-color:#fbb62c;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .closed,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .closed{background-color:#00dca5;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .approved,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .approved{background-color:#06a57e;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .assigned,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .assigned{background-color:#fd6670;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .sent,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .sent{background-color:#3c3cf0;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .under_revision,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .under_revision{background:#689be7;color:#e9f1fd}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .rejected,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .rejected{background-color:#fd6670;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .under_sign,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .under_sign{background-color:#dda722;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .redirectSelection,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .redirectSelection{background-color:#28b994;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .redirect,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper .redirect{background-color:#e38888;color:#fff}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper.Incoming,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper.Incoming{color:#00dca5;font-size:30px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper.Outgoing,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper.Outgoing{color:#fbb62c;font-size:30px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper.Internal,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper.Internal{color:#3c3cf0;font-size:30px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper.internal,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .status-wrapper.internal{color:#3c3cf0;font-size:30px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper{width:100%}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .bi,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .bi{font-size:25px;cursor:pointer;color:#465573;margin:0 5px!important}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .bi:hover,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .bi:hover{color:#2e62df!important;font-size:26px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .datatable-actions-menu button,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .datatable-actions-menu button{display:flex;color:#5171a6;font-size:16px;height:45px;align-items:center;padding:0 10px;width:100%}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .datatable-actions-menu button i,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .datatable-actions-menu button i{font-size:20px;padding:0;display:flex;align-items:center}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .datatable-actions-menu button .action-text,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .datatable-actions-menu button .action-text{padding:0 5px}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .datatable-actions-menu button:hover,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .actions-wrapper .datatable-actions-menu button:hover{background-color:#e6ebf2}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .disabled-actions-wrapper,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .disabled-actions-wrapper{width:100%}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper .datatable-body-row .datatable-row-center .datatable-body-cell .disabled-actions-wrapper .bi,.ngx-datatable .datatable-body .datatable-scroll .datatable-summary-row .datatable-body-row .datatable-row-center .datatable-body-cell .disabled-actions-wrapper .bi{font-size:25px;cursor:not-allowed;color:#465573;margin:0 5px!important;opacity:.7}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper:nth-child(even){background-color:#f4f6f8}.ngx-datatable .datatable-body .datatable-scroll .datatable-row-wrapper:hover{background-color:#eef1f5}.cards-container{display:flex;flex-wrap:wrap;justify-content:center}.cards-container .single-card{padding:15px;border:1px solid rgba(180,186,198,.2);border-radius:3px;min-width:270px;width:24%;margin:0 5px 10px;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;cursor:pointer}.cards-container .single-card .memo-title{font-size:14px;font-weight:bold;color:#465573;border-bottom:1px solid lightgray;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center}.cards-container .single-card .memo-title .action-wrap .action{margin:0 5px;cursor:pointer}.cards-container .single-card .memo-title .action-wrap .action i{font-size:16px}.cards-container .single-card .memo-title .action-wrap .action i:hover{color:#00f}.cards-container .single-card .memo-title .action-wrap .publish-state{font-size:12px;color:#00dca5;font-weight:bold}.cards-container .single-card .memo-title .action-wrap button{border:none;color:#465573;background-color:transparent}.cards-container .single-card .memo-title .action-wrap button i{font-size:16px}.cards-container .single-card .memo-title .action-wrap button i:hover{color:#00f}.cards-container .single-card .memo-body{display:flex;padding:0 10px}.cards-container .single-card .memo-body .key{width:50%;font-size:12px;color:#9aa4ac}.cards-container .single-card .memo-body .value{width:50%;font-size:12px}.cards-container .single-card .memo-body .value .text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cards-container .single-card:hover{background-color:#f6f7f8}.cards-container .single-card:focus{background-color:#f6f7f8}.cards-container .selected-card{background-color:#f6f7f8}.rtl .ngx-datatable .datatable-body .status-wrapper .fav-icon-indicator{left:-10px;top:15px!important;right:auto!important}.dynamic-cards-container{display:flex;flex-wrap:wrap;justify-content:center}.dynamic-cards-container .single-card{padding:15px;border:1px solid rgba(180,186,198,.2);border-radius:3px;min-width:306px;width:24%;margin:0 5px 10px;box-shadow:0 3px 1px -2px #0003,0 2px 2px #00000024,0 1px 5px #0000001f;cursor:pointer}.dynamic-cards-container .single-card .memo-title{font-size:14px;font-weight:bold;color:#465573;border-bottom:1px solid lightgray;margin-bottom:10px;display:flex;justify-content:space-between;align-items:center}.dynamic-cards-container .single-card .memo-title .action-wrap .action{cursor:pointer}.dynamic-cards-container .single-card .memo-title .action-wrap .action i{font-size:16px}.dynamic-cards-container .single-card .memo-title .action-wrap .action i:hover{color:#00f}.dynamic-cards-container .single-card .memo-title .action-wrap .publish-state{font-size:12px;color:#00dca5;font-weight:bold}.dynamic-cards-container .single-card .memo-title .action-wrap button{border:none;color:#465573;background-color:transparent}.dynamic-cards-container .single-card .memo-title .action-wrap button i{font-size:16px}.dynamic-cards-container .single-card .memo-title .action-wrap button i:hover{color:#00f}.dynamic-cards-container .single-card .memo-body{display:flex;padding:0 10px}.dynamic-cards-container .single-card .memo-body .key{width:58%;font-size:12px;color:#9aa4ac;margin-bottom:4px}.dynamic-cards-container .single-card .memo-body .value{width:58%;font-size:12px}.dynamic-cards-container .single-card .memo-body .value .text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dynamic-cards-container .single-card .memo-body .draft{background-color:#596973;color:#fff;width:24%}.dynamic-cards-container .single-card .memo-body .inProgress{background-color:#3c3cf0;color:#fff;width:51%}.dynamic-cards-container .single-card .memo-body .registered{background-color:#5a1496;color:#fff;width:51%}.dynamic-cards-container .single-card .memo-body .archived{background-color:#fbb62c;color:#fff;width:40%}.dynamic-cards-container .single-card .memo-body .closed{background-color:#00dca5;color:#fff;width:31%}.dynamic-cards-container .single-card .memo-body .approved{background-color:#06a57e;color:#fff;width:43%}.dynamic-cards-container .single-card .memo-body .assigned{background-color:#fd6670;color:#fff;width:43%}.dynamic-cards-container .single-card .memo-body .sent{background-color:#3c3cf0;color:#fff;width:23%}.dynamic-cards-container .single-card .memo-body .under_revision{background:#689be7;color:#e9f1fd;width:65%}.dynamic-cards-container .single-card .memo-body .rejected{background-color:#fd6670;color:#fff;width:37%}.dynamic-cards-container .single-card .memo-body .under_sign{background-color:#dda722;color:#fff;width:51%}.dynamic-cards-container .single-card:hover{background-color:#f6f7f8}.dynamic-cards-container .single-card:focus{background-color:#f6f7f8}.dynamic-cards-container .selected-card{background-color:#f6f7f8}.overflowVisible{overflow:visible!important}\n"], components: [{ type: i4$2.DatatableComponent, selector: "ngx-datatable", inputs: ["selected", "scrollbarV", "scrollbarH", "rowHeight", "columnMode", "headerHeight", "footerHeight", "externalPaging", "externalSorting", "loadingIndicator", "reorderable", "swapColumns", "sortType", "sorts", "cssClasses", "messages", "groupExpansionDefault", "selectAllRowsOnPage", "virtualization", "summaryRow", "summaryHeight", "summaryPosition", "rowIdentity", "rows", "groupedRows", "groupRowsBy", "columns", "limit", "count", "offset", "targetMarkerTemplate", "selectionType", "rowClass", "selectCheck", "displayCheck", "trackByProp", "treeFromRelation", "treeToRelation"], outputs: ["scroll", "activate", "select", "sort", "page", "reorder", "resize", "tableContextmenu", "treeAction"] }, { type: i7$2.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: DropdownViewerComponent, selector: "cts-dropdown-viewer", inputs: ["label", "value", "dropdownId", "vertical", "withOutLabel"] }, { type: DepartmentViewerComponent, selector: "cts-department-viewer", inputs: ["label", "value", "dropdownId", "vertical", "withOutLabel", "noStyle"] }, { type: i3$1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: i3$1.MatMenuItem, selector: "[mat-menu-item]", inputs: ["disabled", "disableRipple", "role"], exportAs: ["matMenuItem"] }, { type: DateViewerComponent, selector: "cts-date-viewer", inputs: ["label", "value", "vertical", "format", "hijri", "withOutLabel"] }, { type: DynamicColumnComponent, selector: "cts-dynamic-column", inputs: ["id", "context", "column"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4$2.DataTableColumnDirective, selector: "ngx-datatable-column", inputs: ["name", "prop", "frozenLeft", "frozenRight", "flexGrow", "resizeable", "comparator", "pipe", "sortable", "draggable", "canAutoResize", "minWidth", "width", "maxWidth", "checkboxable", "headerCheckboxable", "headerClass", "cellClass", "isTreeColumn", "treeLevelIndent", "summaryFunc", "summaryTemplate", "cellTemplate", "headerTemplate", "treeToggleTemplate"] }, { type: i4$2.DataTableColumnHeaderDirective, selector: "[ngx-datatable-header-template]" }, { type: i4$2.DataTableColumnCellDirective, selector: "[ngx-datatable-cell-template]" }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: PermissionsDirective, selector: "[permission]", inputs: ["permission"] }, { type: i2$2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltipPosition", "matTooltipDisabled", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { type: i3$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["matMenuTriggerRestoreFocus", "mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }], pipes: { "translate": i1.TranslatePipe, "localizedDate": LocalizedDatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
12957
12953
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: TableComponent, decorators: [{
|
|
12958
12954
|
type: Component,
|
|
12959
12955
|
args: [{
|
|
@@ -13737,7 +13733,7 @@ class DynamicSearchComponent {
|
|
|
13737
13733
|
}
|
|
13738
13734
|
}
|
|
13739
13735
|
DynamicSearchComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DynamicSearchComponent, deps: [{ token: i1$4.ActivatedRoute }, { token: i1$4.Router }, { token: EvaluatorsService }, { token: NuxeoService }, { token: GlobalAdminService }, { token: 'environment' }, { token: i5$1.BreakpointObserver }], target: i0.ɵɵFactoryTarget.Component });
|
|
13740
|
-
DynamicSearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicSearchComponent, selector: "cts-dynamic-search", inputs: { columns: "columns", responsiveColumns: "responsiveColumns", entityType: "entityType", prefix: "prefix", headers: "headers", fields: "fields", pageProvider: "pageProvider", pageSize: "pageSize", sortingBy: "sortingBy", fullTextParamName: "fullTextParamName", filter: "filter", suggesterApi: "suggesterApi", onRowSelected: "onRowSelected", sortingArray: "sortingArray", customResponsiveStyle: "customResponsiveStyle", openCloseFilterFromOutside: "openCloseFilterFromOutside", theme: "theme" }, outputs: { actionOnRow: "actionOnRow" }, viewQueries: [{ propertyName: "dynamicTable", first: true, predicate: ["dynamicTable"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"!customResponsiveStyle\">\r\n <div class=\"search-toolbar d-md-flex d-xl-none mx-3\">\r\n <button (click)=\"onOpenFilter()\" class=\"my-button\">\r\n <span> {{ \"FILTER\" | translate }}</span>\r\n <i class=\"bi bi-filter\" *ngIf=\"!openFilter\"></i>\r\n <i class=\"bi bi-x\" *ngIf=\"openFilter\"></i>\r\n </button>\r\n <div *ngIf=\"openFilter\">\r\n <i class=\"bi bi-caret-up-fill arrow-up\"></i>\r\n </div>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"customResponsiveStyle\">\r\n <div class=\"customStyle -mt-12 px-8 flex flex-col\"\r\n [ngClass]=\"{'bg-accent-200': theme === 'dgda','bg-accent-100': theme === 'ksreleif' || theme === 'comptechco'}\"\r\n [@collapse]=\"!openFilter\">\r\n <!-- <form\r\n [formGroup]=\"searchForm\"\r\n class=\"search-form\"\r\n (ngSubmit)=\"submitForm()\"\r\n >\r\n <input\r\n class=\"search-input\"\r\n type=\"text\"\r\n formControlName=\"text\"\r\n [placeholder]=\"'search.search' | translate\"\r\n />\r\n <div (click)=\"submitForm()\" class=\"search-icon bi bi-search\"></div>\r\n </form> -->\r\n <div class=\"flex gap-x-18 flex-row mt-5 pb-3 overflow-x-auto\">\r\n <ng-container *ngIf=\"aggregations; else progressSpinner\">\r\n <ng-container *ngIf=\"aggregations.length; else noAggregations\">\r\n <ng-container *ngFor=\"let aggregation of aggregations\">\r\n <ng-container *ngIf=\"aggregation.buckets.length > 0\">\r\n <cts-dynamic-filter [entityType]=\"entityType\" [filters]=\"aggregation.buckets\" [id]=\"aggregation.id\"\r\n [selections]=\"aggregation.selection\" [title]=\"aggregation.field\" [prefix]=\"'search'\" [department]=\"\r\n aggregation.field === 'corr:to' ||\r\n aggregation.field === 'corr:from'\r\n \" [componentType]=\"aggregation.componentType ? aggregation.componentType : 'defult'\"\r\n [customPageProvider]=\"aggregation.customPageProvider ? aggregation.customPageProvider : ''\"\r\n [config]=\"aggregation.config ? aggregation.config : {}\" (onFilterSelected)=\"FilterSelected($event)\">\r\n </cts-dynamic-filter>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</ng-container>\r\n\r\n<div class=\"row wrapper\">\r\n <ng-container *ngIf=\"!customResponsiveStyle\">\r\n <div class=\"popup-filter px-3 d-flex d-xl-none\" *ngIf=\"openFilter\">\r\n <form [formGroup]=\"searchForm\" class=\"search-form\" (ngSubmit)=\"submitForm()\">\r\n <input class=\"search-input\" type=\"text\" formControlName=\"text\" [matAutocomplete]=\"matAutocomplete1\" [placeholder]=\"'search.search' | translate\" />\r\n <div (click)=\"submitForm()\" class=\"search-icon bi bi-search\"></div>\r\n </form>\r\n <mat-autocomplete\r\n class=\"\r\n auto-complete-iner-wrapper\r\n auto-complete-wrapper\r\n \"\r\n [disableRipple]=\"true\"\r\n #matAutocomplete1=\"matAutocomplete\"\r\n >\r\n <mat-option\r\n class=\"no-text\"\r\n *ngIf=\"resultSets && !resultSets.length\"\r\n >\r\n {{'no_result_found' | translate}}\r\n </mat-option>\r\n <ng-container *ngFor=\"let resultSet of resultSets\">\r\n <mat-option (click)=\"setOptionValue(resultSet.label)\">\r\n <span\r\n class=\"option-iner-text\"\r\n >{{ resultSet.label }}</span\r\n >\r\n </mat-option >\r\n </ng-container>\r\n </mat-autocomplete>\r\n <ng-container *ngIf=\"aggregations; else progressSpinner\">\r\n <ng-container *ngIf=\"aggregations.length; else noAggregations\">\r\n <div *ngFor=\"let aggregation of aggregations\">\r\n <ng-container *ngIf=\"aggregation.buckets.length > 0\">\r\n <cts-dynamic-filter [entityType]=\"entityType\" [filters]=\"aggregation.buckets\" [id]=\"aggregation.id\"\r\n [selections]=\"aggregation.selection\" [title]=\"aggregation.field\" [prefix]=\"'search'\" [department]=\"\r\n aggregation.field === 'corr:to' ||\r\n aggregation.field === 'corr:from'\r\n \" [componentType]=\"aggregation.componentType ? aggregation.componentType : 'defult'\"\r\n [customPageProvider]=\"aggregation.customPageProvider ? aggregation.customPageProvider : ''\"\r\n [config]=\"aggregation.config ? aggregation.config : {}\" (onFilterSelected)=\"FilterSelected($event)\">\r\n </cts-dynamic-filter>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"col-xl-3 search-sideMenu d-none d-xl-block\">\r\n <form [formGroup]=\"searchForm\" class=\"search-form\" (ngSubmit)=\"submitForm()\">\r\n <input class=\"search-input\" type=\"text\" formControlName=\"text\" [matAutocomplete]=\"matAutocomplete2\"\r\n [placeholder]=\"'search.search' | translate\" />\r\n <div (click)=\"submitForm()\" class=\"search-icon bi bi-search\"></div>\r\n </form>\r\n <mat-autocomplete class=\"\r\n auto-complete-iner-wrapper\r\n auto-complete-wrapper\r\n \" [disableRipple]=\"true\" #matAutocomplete2=\"matAutocomplete\">\r\n <mat-option class=\"no-text\" *ngIf=\"resultSets && !resultSets.length\">\r\n {{'no_result_found' | translate}}\r\n </mat-option>\r\n <ng-container *ngFor=\"let resultSet of resultSets\">\r\n <mat-option (click)=\"setOptionValue(resultSet.label)\">\r\n <span class=\"option-iner-text\">{{ resultSet.label }}</span>\r\n </mat-option>\r\n </ng-container>\r\n </mat-autocomplete>\r\n <ng-container *ngIf=\"aggregations; else progressSpinner\">\r\n <div *ngFor=\"let aggregation of aggregations\">\r\n <ng-container *ngIf=\"aggregation.buckets.length > 0\">\r\n <cts-dynamic-filter [entityType]=\"entityType\" [filters]=\"aggregation.buckets\" [id]=\"aggregation.id\"\r\n [selections]=\"aggregation.selection\" [title]=\"aggregation.field\" [prefix]=\"'search'\" [department]=\"\r\n aggregation.field === 'corr:to' ||\r\n aggregation.field === 'corr:from'\r\n \" [componentType]=\"aggregation.componentType ? aggregation.componentType : 'defult'\"\r\n [customPageProvider]=\"aggregation.customPageProvider ? aggregation.customPageProvider : ''\"\r\n [config]=\"aggregation.config ? aggregation.config : {}\" (onFilterSelected)=\"FilterSelected($event)\">\r\n </cts-dynamic-filter>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </div>\r\n\r\n <div class=\"col-12 col-xl-9\">\r\n <app-card>\r\n <div class=\"title\">\r\n <h3>\r\n {{ \"search.header\" | translate }}\r\n </h3>\r\n </div>\r\n <div class=\"body\">\r\n <div *ngIf=\"aggregations\" class=\"table-toolbar\">\r\n <div class=\"result-count\">\r\n <span>\r\n {{\r\n \"search.\" + \"resultsNumber\"\r\n | translate: { value: totalRecords ? totalRecords : 0 }\r\n }}\r\n </span>\r\n </div>\r\n <div>\r\n <form class=\"d-flex justify-between\" [formGroup]=\"searchForm\" (ngSubmit)=\"submitForm()\">\r\n <div *ngIf=\"useToggleFilters && !customResponsiveStyle\"></div>\r\n <div *ngIf=\"customResponsiveStyle\">\r\n <div class=\"search-form custom-responsive-search\">\r\n <input class=\"search-input\" type=\"text\" formControlName=\"text\" [matAutocomplete]=\"matAutocomplete\"\r\n [placeholder]=\"'search.search' | translate\" />\r\n <div (click)=\"submitForm()\" class=\"search-icon bi bi-search\"></div>\r\n </div>\r\n <mat-autocomplete\r\n class=\"\r\n auto-complete-iner-wrapper\r\n auto-complete-wrapper\r\n \"\r\n [disableRipple]=\"true\"\r\n #matAutocomplete=\"matAutocomplete\"\r\n >\r\n <mat-option\r\n class=\"no-text\"\r\n *ngIf=\"resultSets && !resultSets.length\"\r\n >\r\n {{no_result_found | translate}}\r\n </mat-option>\r\n <ng-container *ngFor=\"let resultSet of resultSets\">\r\n <mat-option (click)=\"setOptionValue(resultSet.label)\">\r\n <span\r\n class=\"option-iner-text\"\r\n >{{ resultSet.label }}</span\r\n >\r\n </mat-option >\r\n </ng-container>\r\n </mat-autocomplete>\r\n </div>\r\n <div class=\"d-flex\" *ngIf=\"useToggleFilters\">\r\n <cts-dynamic-form-slide-toggleitem class=\"mx-2 small-font\" [label]=\"'search.PERSONAL_FILES'\"\r\n (onToggle)=\"submitForm()\" formControlName=\"personalFiles\">\r\n </cts-dynamic-form-slide-toggleitem>\r\n <cts-dynamic-form-slide-toggleitem class=\"mx-2 small-font\" [label]=\"'search.DEP_FILES'\"\r\n formControlName=\"depFiles\" (onToggle)=\"submitForm()\">\r\n </cts-dynamic-form-slide-toggleitem>\r\n <cts-dynamic-form-slide-toggleitem class=\"mx-2 small-font\" [label]=\"'search.WORKSPACE_FILES'\"\r\n formControlName=\"workSpaceFiles\" (onToggle)=\"submitForm()\">\r\n </cts-dynamic-form-slide-toggleitem>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n <cts-dynamic-table #dynamicTable [pageSize]=\"pageSize\" [columns]=\"columns\" [responsiveColumns]=\"responsiveColumns\"\r\n [pageProvider]=\"pageProvider\" [quickFilter]=\"filter\" [entityType]=\"entityType\" [fields]=\"fields\"\r\n [queryParam]=\"queryParams\" [headers]=\"headers\" [prefix]=\"prefix\" [sortingBy]=\"sortingBy\" [isSearchPage]=\"true\"\r\n (onRowSelected)=\"onRowSelected($event)\" (actionOnRow)=\"performAction($event)\"\r\n (onGettingData)=\"getTableData($event)\"></cts-dynamic-table>\r\n </div>\r\n </app-card>\r\n </div>\r\n\r\n <ng-template #progressSpinner>\r\n <div class=\"progress-spinner\">\r\n <mat-spinner color=\"warn\" [diameter]=\"25\"></mat-spinner>\r\n </div>\r\n </ng-template>\r\n <ng-template #noAggregations>\r\n <div class=\"progress-spinner\">\r\n {{ \"search.noAggregations\" | translate }}\r\n </div>\r\n </ng-template>\r\n</div>", 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}.result-count{color:#8f98aa;font-size:14px}.search-sideMenu{background-color:#fff;padding-top:22px;padding-bottom:22px;border-radius:5px}.auto-complete-iner-wrapper{max-height:350px;border-radius:4px}.auto-complete-iner-wrapper .no-text{font-size:14px;color:#465573}.auto-complete-iner-wrapper .mat-option{text-align:start;color:#465573;font-weight:bold;font-size:14px}.auto-complete-iner-wrapper .mat-option .mat-option-text{text-align:flex-start}.search-form{display:flex;color:#6a768e;width:100%}.search-form .search-input{width:100%;border:1px solid #d9dce2;border-inline-end:0;border-start-start-radius:5px;border-end-start-radius:5px;border:1px solid #ccc;height:32px;font-size:16px;padding-inline-start:4px}.search-form .search-input::-webkit-input-placeholder{font-size:14px}.search-form .search-input:focus-visible{border:2px solid #465573;outline:transparent}.search-form .search-icon{background:#465573;color:#fff;width:12%;display:flex;align-items:center;justify-content:center;border-radius:0;cursor:pointer;border:1px solid #d9dce2;border-start-end-radius:6px;border-end-end-radius:6px;border-inline-start:0}.small-font{font-size:14px}.custom-responsive-search{width:300px!important;margin:0 35px}.search-toolbar{position:relative;display:flex;justify-content:flex-end;margin-bottom:16px}.search-toolbar .my-button{width:90px}.search-toolbar .arrow-up{position:absolute;top:26px;right:28px;font-size:25px;color:#8f98aab3}.wrapper{position:relative}.wrapper .popup-filter{flex-direction:column;position:absolute;right:0;z-index:9999;max-height:70vh;max-width:400px;background-color:#fff;overflow:scroll;box-shadow:0 1px 10px 2px #00000054;top:-4px;border-radius:5px}.wrapper .popup-filter .search-form{margin-top:10px!important}.wrapper .popup-filter .search-input{width:100%!important}.wrapper .search-container{background-color:#fff;border-radius:5px;border:0px;padding:16px;height:max-content}.wrapper .search-container .table-toolbar{display:flex;align-items:center;margin-bottom:8px;justify-content:space-between}.progress-spinner{margin-top:10px;margin-block-end:0;display:grid;place-items:center;width:100%}.rtl .popup-filter{left:0px;right:unset!important}.rtl .arrow-up{position:absolute;top:33px;left:28px;right:unset!important}@media (width: 1180px),(width: 820px){.customStyle cts-dynamic-filter .aggregation-container{width:176px!important}}.customStyle .search-form{display:flex;color:#6a768e;width:100%}.customStyle .search-form .search-input{width:288px;border:1px solid #d9dce2;border-inline-end:0;border-start-start-radius:5px;border-end-start-radius:5px;border:1px solid #ccc;height:32px;font-size:16px;padding-inline-start:4px}.customStyle .search-form .search-input::-webkit-input-placeholder{font-size:14px}.customStyle .search-form .search-input:focus-visible{border:2px solid #465573;outline:transparent}.customStyle .search-form .search-icon{background:#465573;color:#fff;width:40px;display:flex;align-items:center;justify-content:center;border-radius:0;cursor:pointer;border:1px solid #d9dce2;border-start-end-radius:6px;border-end-end-radius:6px;border-inline-start:0}\n"], components: [{ type: DynamicFilterComponent, selector: "cts-dynamic-filter", inputs: ["title", "filters", "selections", "id", "entityType", "prefix", "department", "componentType", "customPageProvider", "config"], outputs: ["onFilterSelected"] }, { type: i7$2.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i2$5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: CardComponent, selector: "app-card", inputs: ["noBody", "dark"] }, { type: DynamicFormSlideToggleitemComponent, selector: "cts-dynamic-form-slide-toggleitem", inputs: ["label", "disabled", "checked", "theme"], outputs: ["onToggle"] }, { type: DynamicTableComponent, selector: "cts-dynamic-table", inputs: ["columns", "responsiveColumns", "entityType", "prefix", "headers", "fields", "pageProvider", "pageSize", "sortingBy", "queryParam", "quickFilter", "report", "rowCursor", "fullWidth", "tableMode", "tableActions", "defultSort", "range", "isSearchPage", "multiSelectRows", "customFirstRow", "highlightSelectedCard", "showActionsAsMenu", "filterParams", "format"], outputs: ["onRowSelected", "onRowIndexSelected", "actionOnRow", "onGettingData", "onMultiRowSelected", "onLoading"] }, { type: i1$5.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i2$6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2$6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2$6.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: i7$2.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i2$6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$6.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "translate": i1.TranslatePipe }, animations: [
|
|
13736
|
+
DynamicSearchComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DynamicSearchComponent, selector: "cts-dynamic-search", inputs: { columns: "columns", responsiveColumns: "responsiveColumns", entityType: "entityType", prefix: "prefix", headers: "headers", fields: "fields", pageProvider: "pageProvider", pageSize: "pageSize", sortingBy: "sortingBy", fullTextParamName: "fullTextParamName", filter: "filter", suggesterApi: "suggesterApi", onRowSelected: "onRowSelected", sortingArray: "sortingArray", customResponsiveStyle: "customResponsiveStyle", openCloseFilterFromOutside: "openCloseFilterFromOutside", theme: "theme" }, outputs: { actionOnRow: "actionOnRow" }, viewQueries: [{ propertyName: "dynamicTable", first: true, predicate: ["dynamicTable"], descendants: true }], usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"!customResponsiveStyle\">\r\n <div class=\"search-toolbar d-md-flex d-xl-none mx-3\">\r\n <button (click)=\"onOpenFilter()\" class=\"my-button\">\r\n <span> {{ \"FILTER\" | translate }}</span>\r\n <i class=\"bi bi-filter\" *ngIf=\"!openFilter\"></i>\r\n <i class=\"bi bi-x\" *ngIf=\"openFilter\"></i>\r\n </button>\r\n <div *ngIf=\"openFilter\">\r\n <i class=\"bi bi-caret-up-fill arrow-up\"></i>\r\n </div>\r\n </div>\r\n</ng-container>\r\n\r\n<ng-container *ngIf=\"customResponsiveStyle\">\r\n <div class=\"customStyle -mt-12 px-8 flex flex-col\"\r\n [ngClass]=\"{'bg-accent-200': theme === 'dgda','bg-accent-100': theme === 'ksreleif' || theme === 'comptechco'}\"\r\n [@collapse]=\"!openFilter\">\r\n <!-- <form\r\n [formGroup]=\"searchForm\"\r\n class=\"search-form\"\r\n (ngSubmit)=\"submitForm()\"\r\n >\r\n <input\r\n class=\"search-input\"\r\n type=\"text\"\r\n formControlName=\"text\"\r\n [placeholder]=\"'search.search' | translate\"\r\n />\r\n <div (click)=\"submitForm()\" class=\"search-icon bi bi-search\"></div>\r\n </form> -->\r\n <div class=\"flex gap-x-18 flex-row mt-5 pb-3 overflow-x-auto\">\r\n <ng-container *ngIf=\"aggregations; else progressSpinner\">\r\n <ng-container *ngIf=\"aggregations.length; else noAggregations\">\r\n <ng-container *ngFor=\"let aggregation of aggregations\">\r\n <ng-container *ngIf=\"aggregation.buckets.length > 0\">\r\n <cts-dynamic-filter [entityType]=\"entityType\" [filters]=\"aggregation.buckets\" [id]=\"aggregation.id\"\r\n [selections]=\"aggregation.selection\" [title]=\"aggregation.field\" [prefix]=\"'search'\" [department]=\"\r\n aggregation.field === 'corr:to' ||\r\n aggregation.field === 'corr:from'\r\n \" [componentType]=\"aggregation.componentType ? aggregation.componentType : 'defult'\"\r\n [customPageProvider]=\"aggregation.customPageProvider ? aggregation.customPageProvider : ''\"\r\n [config]=\"aggregation.config ? aggregation.config : {}\" (onFilterSelected)=\"FilterSelected($event)\">\r\n </cts-dynamic-filter>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </div>\r\n</ng-container>\r\n\r\n<div class=\"row wrapper\">\r\n <ng-container *ngIf=\"!customResponsiveStyle\">\r\n <div class=\"popup-filter px-3 d-flex d-xl-none\" *ngIf=\"openFilter\">\r\n <form [formGroup]=\"searchForm\" class=\"search-form\" (ngSubmit)=\"submitForm()\">\r\n <input class=\"search-input\" type=\"text\" formControlName=\"text\" [matAutocomplete]=\"matAutocomplete1\" [placeholder]=\"'search.search' | translate\" />\r\n <div (click)=\"submitForm()\" class=\"search-icon bi bi-search\"></div>\r\n </form>\r\n <mat-autocomplete\r\n class=\"\r\n auto-complete-iner-wrapper\r\n auto-complete-wrapper\r\n \"\r\n [disableRipple]=\"true\"\r\n #matAutocomplete1=\"matAutocomplete\"\r\n >\r\n <mat-option\r\n class=\"no-text\"\r\n *ngIf=\"resultSets && !resultSets.length\"\r\n >\r\n {{'no_result_found' | translate}}\r\n </mat-option>\r\n <ng-container *ngFor=\"let resultSet of resultSets\">\r\n <mat-option (click)=\"setOptionValue(resultSet.label)\">\r\n <span\r\n class=\"option-iner-text\"\r\n >{{ resultSet.label }}</span\r\n >\r\n </mat-option >\r\n </ng-container>\r\n </mat-autocomplete>\r\n <ng-container *ngIf=\"aggregations; else progressSpinner\">\r\n <ng-container *ngIf=\"aggregations.length; else noAggregations\">\r\n <div *ngFor=\"let aggregation of aggregations\">\r\n <ng-container *ngIf=\"aggregation.buckets.length > 0\">\r\n <cts-dynamic-filter [entityType]=\"entityType\" [filters]=\"aggregation.buckets\" [id]=\"aggregation.id\"\r\n [selections]=\"aggregation.selection\" [title]=\"aggregation.field\" [prefix]=\"'search'\" [department]=\"\r\n aggregation.field === 'corr:to' ||\r\n aggregation.field === 'corr:from'\r\n \" [componentType]=\"aggregation.componentType ? aggregation.componentType : 'defult'\"\r\n [customPageProvider]=\"aggregation.customPageProvider ? aggregation.customPageProvider : ''\"\r\n [config]=\"aggregation.config ? aggregation.config : {}\" (onFilterSelected)=\"FilterSelected($event)\">\r\n </cts-dynamic-filter>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n\r\n <div class=\"col-xl-3 search-sideMenu d-none d-xl-block\">\r\n <form [formGroup]=\"searchForm\" class=\"search-form\" (ngSubmit)=\"submitForm()\">\r\n <input class=\"search-input\" type=\"text\" formControlName=\"text\" [matAutocomplete]=\"matAutocomplete2\"\r\n [placeholder]=\"'search.search' | translate\" />\r\n <div (click)=\"submitForm()\" class=\"search-icon bi bi-search\"></div>\r\n </form>\r\n <mat-autocomplete class=\"\r\n auto-complete-iner-wrapper\r\n auto-complete-wrapper\r\n \" [disableRipple]=\"true\" #matAutocomplete2=\"matAutocomplete\">\r\n <mat-option class=\"no-text\" *ngIf=\"resultSets && !resultSets.length\">\r\n {{'no_result_found' | translate}}\r\n </mat-option>\r\n <ng-container *ngFor=\"let resultSet of resultSets\">\r\n <mat-option (click)=\"setOptionValue(resultSet.label)\">\r\n <span class=\"option-iner-text\">{{ resultSet.label }}</span>\r\n </mat-option>\r\n </ng-container>\r\n </mat-autocomplete>\r\n <ng-container *ngIf=\"aggregations; else progressSpinner\">\r\n <div *ngFor=\"let aggregation of aggregations\">\r\n <ng-container *ngIf=\"aggregation.buckets.length > 0\">\r\n <cts-dynamic-filter [entityType]=\"entityType\" [filters]=\"aggregation.buckets\" [id]=\"aggregation.id\"\r\n [selections]=\"aggregation.selection\" [title]=\"aggregation.field\" [prefix]=\"'search'\" [department]=\"\r\n aggregation.field === 'corr:to' ||\r\n aggregation.field === 'corr:from'\r\n \" [componentType]=\"aggregation.componentType ? aggregation.componentType : 'defult'\"\r\n [customPageProvider]=\"aggregation.customPageProvider ? aggregation.customPageProvider : ''\"\r\n [config]=\"aggregation.config ? aggregation.config : {}\" (onFilterSelected)=\"FilterSelected($event)\">\r\n </cts-dynamic-filter>\r\n </ng-container>\r\n </div>\r\n </ng-container>\r\n </div>\r\n\r\n <div class=\"col-12 col-xl-9\">\r\n <app-card>\r\n <div class=\"title\">\r\n <h3>\r\n {{ \"search.header\" | translate }}\r\n </h3>\r\n </div>\r\n <div class=\"body\">\r\n <div *ngIf=\"aggregations\" class=\"table-toolbar\">\r\n <div class=\"result-count\">\r\n <span>\r\n {{\r\n \"search.\" + \"resultsNumber\"\r\n | translate: { value: totalRecords ? totalRecords : 0 }\r\n }}\r\n </span>\r\n </div>\r\n <div>\r\n <form class=\"d-flex justify-between\" [formGroup]=\"searchForm\" (ngSubmit)=\"submitForm()\">\r\n <div *ngIf=\"useToggleFilters && !customResponsiveStyle\"></div>\r\n <div *ngIf=\"customResponsiveStyle\">\r\n <div class=\"search-form custom-responsive-search\">\r\n <input class=\"search-input\" type=\"text\" formControlName=\"text\" [matAutocomplete]=\"matAutocomplete\"\r\n [placeholder]=\"'search.search' | translate\" />\r\n <div (click)=\"submitForm()\" class=\"search-icon bi bi-search\"></div>\r\n </div>\r\n <mat-autocomplete\r\n class=\"\r\n auto-complete-iner-wrapper\r\n auto-complete-wrapper\r\n \"\r\n [disableRipple]=\"true\"\r\n #matAutocomplete=\"matAutocomplete\"\r\n >\r\n <mat-option\r\n class=\"no-text\"\r\n *ngIf=\"resultSets && !resultSets.length\"\r\n >\r\n {{no_result_found | translate}}\r\n </mat-option>\r\n <ng-container *ngFor=\"let resultSet of resultSets\">\r\n <mat-option (click)=\"setOptionValue(resultSet.label)\">\r\n <span\r\n class=\"option-iner-text\"\r\n >{{ resultSet.label }}</span\r\n >\r\n </mat-option >\r\n </ng-container>\r\n </mat-autocomplete>\r\n </div>\r\n <div class=\"d-flex\" *ngIf=\"useToggleFilters\">\r\n <cts-dynamic-form-slide-toggleitem class=\"mx-2 small-font\" [label]=\"'search.PERSONAL_FILES'\"\r\n (onToggle)=\"submitForm()\" formControlName=\"personalFiles\">\r\n </cts-dynamic-form-slide-toggleitem>\r\n <cts-dynamic-form-slide-toggleitem class=\"mx-2 small-font\" [label]=\"'search.DEP_FILES'\"\r\n formControlName=\"depFiles\" (onToggle)=\"submitForm()\">\r\n </cts-dynamic-form-slide-toggleitem>\r\n <cts-dynamic-form-slide-toggleitem class=\"mx-2 small-font\" [label]=\"'search.WORKSPACE_FILES'\"\r\n formControlName=\"workSpaceFiles\" (onToggle)=\"submitForm()\">\r\n </cts-dynamic-form-slide-toggleitem>\r\n </div>\r\n </form>\r\n </div>\r\n </div>\r\n <cts-dynamic-table #dynamicTable [pageSize]=\"pageSize\" [columns]=\"columns\" [responsiveColumns]=\"responsiveColumns\"\r\n [pageProvider]=\"pageProvider\" [quickFilter]=\"filter\" [entityType]=\"entityType\" [fields]=\"fields\"\r\n [queryParam]=\"queryParams\" [headers]=\"headers\" [prefix]=\"prefix\" [sortingBy]=\"sortingBy\" [isSearchPage]=\"true\"\r\n (onRowSelected)=\"onRowSelected($event)\" (actionOnRow)=\"performAction($event)\"\r\n (onGettingData)=\"getTableData($event)\"></cts-dynamic-table>\r\n </div>\r\n </app-card>\r\n </div>\r\n\r\n <ng-template #progressSpinner>\r\n <div class=\"progress-spinner\">\r\n <mat-spinner color=\"warn\" [diameter]=\"25\"></mat-spinner>\r\n </div>\r\n </ng-template>\r\n <ng-template #noAggregations>\r\n <div class=\"progress-spinner\">\r\n {{ \"search.noAggregations\" | translate }}\r\n </div>\r\n </ng-template>\r\n</div>", 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}.result-count{color:#8f98aa;font-size:14px}.search-sideMenu{background-color:#fff;padding-top:22px;padding-bottom:22px;border-radius:5px}.auto-complete-iner-wrapper{max-height:350px;border-radius:4px}.auto-complete-iner-wrapper .no-text{font-size:14px;color:#465573}.auto-complete-iner-wrapper .mat-option{text-align:start;color:#465573;font-weight:bold;font-size:14px}.auto-complete-iner-wrapper .mat-option .mat-option-text{text-align:flex-start}.search-form{display:flex;color:#6a768e;width:100%}.search-form .search-input{width:100%;border:1px solid #d9dce2;border-inline-end:0;border-start-start-radius:5px;border-end-start-radius:5px;border:1px solid #ccc;height:32px;font-size:16px;padding-inline-start:4px}.search-form .search-input::-webkit-input-placeholder{font-size:14px}.search-form .search-input:focus-visible{border:2px solid #465573;outline:transparent}.search-form .search-icon{background:#465573;color:#fff;width:12%;display:flex;align-items:center;justify-content:center;border-radius:0;cursor:pointer;border:1px solid #d9dce2;border-start-end-radius:6px;border-end-end-radius:6px;border-inline-start:0}.small-font{font-size:14px}.custom-responsive-search{width:300px!important;margin:0 35px}.search-toolbar{position:relative;display:flex;justify-content:flex-end;margin-bottom:16px}.search-toolbar .my-button{width:90px}.search-toolbar .arrow-up{position:absolute;top:26px;right:28px;font-size:25px;color:#8f98aab3}.wrapper{position:relative}.wrapper .popup-filter{flex-direction:column;position:absolute;right:0;z-index:9999;max-height:70vh;max-width:400px;background-color:#fff;overflow:scroll;box-shadow:0 1px 10px 2px #00000054;top:-4px;border-radius:5px}.wrapper .popup-filter .search-form{margin-top:10px!important}.wrapper .popup-filter .search-input{width:100%!important}.wrapper .search-container{background-color:#fff;border-radius:5px;border:0px;padding:16px;height:max-content}.wrapper .search-container .table-toolbar{display:flex;align-items:center;margin-bottom:8px;justify-content:space-between}.progress-spinner{margin-top:10px;margin-block-end:0;display:grid;place-items:center;width:100%}.rtl .popup-filter{left:0px;right:unset!important}.rtl .arrow-up{position:absolute;top:33px;left:28px;right:unset!important}@media (width: 1180px),(width: 820px){.customStyle cts-dynamic-filter .aggregation-container{width:176px!important}}.customStyle .search-form{display:flex;color:#6a768e;width:100%}.customStyle .search-form .search-input{width:288px;border:1px solid #d9dce2;border-inline-end:0;border-start-start-radius:5px;border-end-start-radius:5px;border:1px solid #ccc;height:32px;font-size:16px;padding-inline-start:4px}.customStyle .search-form .search-input::-webkit-input-placeholder{font-size:14px}.customStyle .search-form .search-input:focus-visible{border:2px solid #465573;outline:transparent}.customStyle .search-form .search-icon{background:#465573;color:#fff;width:40px;display:flex;align-items:center;justify-content:center;border-radius:0;cursor:pointer;border:1px solid #d9dce2;border-start-end-radius:6px;border-end-end-radius:6px;border-inline-start:0}\n"], components: [{ type: DynamicFilterComponent, selector: "cts-dynamic-filter", inputs: ["title", "filters", "selections", "id", "entityType", "prefix", "department", "componentType", "customPageProvider", "config"], outputs: ["onFilterSelected"] }, { type: i7$3.MatAutocomplete, selector: "mat-autocomplete", inputs: ["disableRipple"], exportAs: ["matAutocomplete"] }, { type: i2$5.MatOption, selector: "mat-option", exportAs: ["matOption"] }, { type: CardComponent, selector: "app-card", inputs: ["noBody", "dark"] }, { type: DynamicFormSlideToggleitemComponent, selector: "cts-dynamic-form-slide-toggleitem", inputs: ["label", "disabled", "checked", "theme"], outputs: ["onToggle"] }, { type: DynamicTableComponent, selector: "cts-dynamic-table", inputs: ["columns", "responsiveColumns", "entityType", "prefix", "headers", "fields", "pageProvider", "pageSize", "sortingBy", "queryParam", "quickFilter", "report", "rowCursor", "fullWidth", "tableMode", "tableActions", "defultSort", "range", "isSearchPage", "multiSelectRows", "customFirstRow", "highlightSelectedCard", "showActionsAsMenu", "filterParams", "format"], outputs: ["onRowSelected", "onRowIndexSelected", "actionOnRow", "onGettingData", "onMultiRowSelected", "onLoading"] }, { type: i1$5.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i2$6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2$6.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2$6.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: i7$3.MatAutocompleteTrigger, selector: "input[matAutocomplete], textarea[matAutocomplete]", exportAs: ["matAutocompleteTrigger"] }, { type: i2$6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$6.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "translate": i1.TranslatePipe }, animations: [
|
|
13741
13737
|
trigger('collapse', [
|
|
13742
13738
|
state('false', style({ height: AUTO_STYLE, visibility: AUTO_STYLE })),
|
|
13743
13739
|
state('true', style({ height: '0', visibility: 'hidden' })),
|
|
@@ -14667,12 +14663,13 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
14667
14663
|
* ></app-documents-list>
|
|
14668
14664
|
*/
|
|
14669
14665
|
class DocumentsListComponent {
|
|
14670
|
-
constructor(documentsApi, nuxeoApi, toastr, dialog, router) {
|
|
14666
|
+
constructor(documentsApi, nuxeoApi, toastr, dialog, router, nuxeoDialogService) {
|
|
14671
14667
|
this.documentsApi = documentsApi;
|
|
14672
14668
|
this.nuxeoApi = nuxeoApi;
|
|
14673
14669
|
this.toastr = toastr;
|
|
14674
14670
|
this.dialog = dialog;
|
|
14675
14671
|
this.router = router;
|
|
14672
|
+
this.nuxeoDialogService = nuxeoDialogService;
|
|
14676
14673
|
/** Should disable Pagination */
|
|
14677
14674
|
this.disablePagination = false;
|
|
14678
14675
|
/** documents or batch items array */
|
|
@@ -14732,14 +14729,16 @@ class DocumentsListComponent {
|
|
|
14732
14729
|
event.stopPropagation();
|
|
14733
14730
|
if (this.canDelete) {
|
|
14734
14731
|
if (!this.batchList) {
|
|
14735
|
-
this.
|
|
14736
|
-
.
|
|
14737
|
-
|
|
14738
|
-
|
|
14739
|
-
|
|
14740
|
-
|
|
14741
|
-
|
|
14742
|
-
|
|
14732
|
+
this.nuxeoDialogService
|
|
14733
|
+
.showConfirm({
|
|
14734
|
+
message: 'genericConfirm',
|
|
14735
|
+
actions: {
|
|
14736
|
+
confirm: {
|
|
14737
|
+
fn: () => {
|
|
14738
|
+
return of(true);
|
|
14739
|
+
},
|
|
14740
|
+
show: true
|
|
14741
|
+
}
|
|
14743
14742
|
}
|
|
14744
14743
|
})
|
|
14745
14744
|
.afterClosed()
|
|
@@ -14839,7 +14838,7 @@ class DocumentsListComponent {
|
|
|
14839
14838
|
this.onDestroy$.complete();
|
|
14840
14839
|
}
|
|
14841
14840
|
}
|
|
14842
|
-
DocumentsListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DocumentsListComponent, deps: [{ token: DocumentsService }, { token: NuxeoService }, { token: CustomToastrService }, { token: i1$3.MatDialog }, { token: i1$4.Router }], target: i0.ɵɵFactoryTarget.Component });
|
|
14841
|
+
DocumentsListComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DocumentsListComponent, deps: [{ token: DocumentsService }, { token: NuxeoService }, { token: CustomToastrService }, { token: i1$3.MatDialog }, { token: i1$4.Router }, { token: NuxeoDialogService }], target: i0.ɵɵFactoryTarget.Component });
|
|
14843
14842
|
DocumentsListComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: DocumentsListComponent, selector: "app-documents-list", inputs: { ancestorId: "ancestorId", provider: "provider", disablePagination: "disablePagination", containerClasses: "containerClasses", itemsClasses: "itemsClasses", items: "items", notifier: "notifier", canPreview: "canPreview", batchList: "batchList", dontDelete: "dontDelete", canDelete: "canDelete", quickFilters: "quickFilters", memoView: "memoView" }, outputs: { deleteSuccess: "deleteSuccess", documentsCount: "documentsCount", documentSelect: "documentSelect" }, usesOnChanges: true, ngImport: i0, template: "<ng-container *ngIf=\"!isFetching; else spinner\">\r\n <div *ngIf=\"items.length; else noEntry\">\r\n <div class=\"doc-list\">\r\n <div class=\"doc-item\" (click)=\"preview(item.uid)\" *ngFor=\"\r\n let item of items\r\n ;\r\n let last = last\r\n \">\r\n <div class=\"item-content\">\r\n <mat-icon class=\"file-icon\">file_copy</mat-icon>\r\n {{ item.title }}\r\n </div>\r\n <button *ngIf=\"canDelete && isCreator(item)\" (click)=\"deleteDocument($event, item)\"\r\n class=\"btn btn-outline-danger btn-no-border\">\r\n <mat-icon>delete</mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n <div [ngClass]=\"{ 'hidden': disablePagination }\" class=\"wrapping-pagination my-3\">\r\n <cts-pagination [page]=\"p\" (change)=\"onChange($event)\"\r\n [size]=\"count\" [count]=\"totalRecords\">\r\n </cts-pagination>\r\n </div>\r\n </div>\r\n <ng-template #noEntry>\r\n <!-- <app-no-entry [msg]=\"'documents.noEntry'\"></app-no-entry> -->\r\n <!-- <cts-no-data\r\n [message]=\"'documents.noEntry'\"\r\n ></cts-no-data> -->\r\n </ng-template>\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-list{flex:1;justify-content:space-between;cursor:pointer;margin-bottom:14px;border:2px solid #d9dce2;margin-top:2px;border-radius:5px}.wrapping-pagination{display:flex;justify-content:center;align-items:center}.doc-item{display:flex;flex:1;justify-content:space-between;cursor:pointer;padding:8px;border-bottom:1px solid;border-color:#d9dce2}.doc-item:last-child{border-width:0px}.doc-item .item-content{display:flex;align-items:center;justify-content:space-between}.doc-item .file-icon{margin:8px;color:#465573}.pagination{justify-self:center}\n"], components: [{ type: i2$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: PaginationComponent, selector: "cts-pagination", inputs: ["size", "count", "page"], outputs: ["change"] }, { type: i1$5.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }] });
|
|
14844
14843
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DocumentsListComponent, decorators: [{
|
|
14845
14844
|
type: Component,
|
|
@@ -14848,7 +14847,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
14848
14847
|
templateUrl: './documents-list.component.html',
|
|
14849
14848
|
styleUrls: ['./documents-list.component.scss']
|
|
14850
14849
|
}]
|
|
14851
|
-
}], ctorParameters: function () { return [{ type: DocumentsService }, { type: NuxeoService }, { type: CustomToastrService }, { type: i1$3.MatDialog }, { type: i1$4.Router }]; }, propDecorators: { ancestorId: [{
|
|
14850
|
+
}], ctorParameters: function () { return [{ type: DocumentsService }, { type: NuxeoService }, { type: CustomToastrService }, { type: i1$3.MatDialog }, { type: i1$4.Router }, { type: NuxeoDialogService }]; }, propDecorators: { ancestorId: [{
|
|
14852
14851
|
type: Input
|
|
14853
14852
|
}], provider: [{
|
|
14854
14853
|
type: Input
|
|
@@ -18828,7 +18827,7 @@ class AddToCollectionComponent extends BaseComponent {
|
|
|
18828
18827
|
}
|
|
18829
18828
|
}
|
|
18830
18829
|
AddToCollectionComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AddToCollectionComponent, deps: [{ token: FileManagerService }, { token: CustomToastrService }, { token: NuxeoDialogService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
18831
|
-
AddToCollectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: AddToCollectionComponent, selector: "app-add-to-collection", inputs: { visible: "visible", rtlEnabled: "rtlEnabled", selectedItems: "selectedItems" }, outputs: { visibleChange: "visibleChange" }, viewQueries: [{ propertyName: "form", first: true, predicate: DxFormComponent, descendants: true }, { propertyName: "contentTemplate", first: true, predicate: ["contentTemplate"], descendants: true }, { propertyName: "actionsTemplate", first: true, predicate: ["actionsTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "
|
|
18830
|
+
AddToCollectionComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: AddToCollectionComponent, selector: "app-add-to-collection", inputs: { visible: "visible", rtlEnabled: "rtlEnabled", selectedItems: "selectedItems" }, outputs: { visibleChange: "visibleChange" }, viewQueries: [{ propertyName: "form", first: true, predicate: DxFormComponent, descendants: true }, { propertyName: "contentTemplate", first: true, predicate: ["contentTemplate"], descendants: true }, { propertyName: "actionsTemplate", first: true, predicate: ["actionsTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #contentTemplate>\r\n\t<form>\r\n\t\t<dx-form\r\n\t\t\tclass=\"collection-form-wrapper\"\r\n\t\t\t#createForm\r\n\t\t\t[formData]=\"formData\"\r\n\t\t\t[disabled]=\"loading\"\r\n\t\t>\r\n\t\t\t<dxi-item editorType=\"dxTextBox\">\r\n\t\t\t\t<ng-select\r\n\t\t\t\t\t[items]=\"items$ | async\"\r\n\t\t\t\t\tbindLabel=\"displayLabel\"\r\n\t\t\t\t\t[addTag]=\"true\"\r\n\t\t\t\t\taddTagText=\"Add collection\"\r\n\t\t\t\t\t[multiple]=\"false\"\r\n\t\t\t\t\t[hideSelected]=\"true\"\r\n\t\t\t\t\t[minTermLength]=\"0\"\r\n\t\t\t\t\t[loading]=\"tagsLoading\"\r\n\t\t\t\t\ttypeToSearchText=\"search\"\r\n\t\t\t\t\t[typeahead]=\"tagsInput$\"\r\n\t\t\t\t\t[(ngModel)]=\"selectedTags\"\r\n\t\t\t\t\trequired\r\n\t\t\t\t\tplaceholder=\"{{ 'VOCABULARY.SELECT_ITEM' | translate }}\"\r\n\t\t\t\t\tname=\"selectedItem\"\r\n\t\t\t\t\t(change)=\"emitSelection($event)\"\r\n\t\t\t\t>\r\n\t\t\t\t</ng-select>\r\n\t\t\t</dxi-item>\r\n\t\t</dx-form>\r\n\t</form>\r\n</ng-template>\r\n\r\n<ng-template #actionsTemplate let-dialog=\"dialog\">\r\n\t<button\r\n\t\tclass=\"submission-button px-5\"\r\n\t\t(click)=\"dialog.executeAction(onFormCollectionSubmit, [$event])\"\r\n\t>\r\n\t\t{{ 'FILE_MANAGER.ADD' | translate }}\r\n\t</button>\r\n</ng-template>\r\n", styles: [""], components: [{ type: i4$4.DxFormComponent, selector: "dx-form", inputs: ["accessKey", "activeStateEnabled", "alignItemLabels", "alignItemLabelsInAllGroups", "colCount", "colCountByScreen", "customizeItem", "disabled", "elementAttr", "focusStateEnabled", "formData", "height", "hint", "hoverStateEnabled", "items", "labelLocation", "labelMode", "minColWidth", "optionalMark", "readOnly", "requiredMark", "requiredMessage", "rtlEnabled", "screenByWidth", "scrollingEnabled", "showColonAfterLabel", "showOptionalMark", "showRequiredMark", "showValidationSummary", "tabIndex", "validationGroup", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onEditorEnterKey", "onFieldDataChanged", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "alignItemLabelsChange", "alignItemLabelsInAllGroupsChange", "colCountChange", "colCountByScreenChange", "customizeItemChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "formDataChange", "heightChange", "hintChange", "hoverStateEnabledChange", "itemsChange", "labelLocationChange", "labelModeChange", "minColWidthChange", "optionalMarkChange", "readOnlyChange", "requiredMarkChange", "requiredMessageChange", "rtlEnabledChange", "screenByWidthChange", "scrollingEnabledChange", "showColonAfterLabelChange", "showOptionalMarkChange", "showRequiredMarkChange", "showValidationSummaryChange", "tabIndexChange", "validationGroupChange", "visibleChange", "widthChange"] }, { type: i5$2.DxiItemComponent, selector: "dxi-item", inputs: ["disabled", "html", "icon", "template", "text", "title", "titleTemplate", "visible", "onClick", "stylingMode", "type", "baseSize", "box", "ratio", "shrink", "elementAttr", "hint", "beginGroup", "closeMenuOnClick", "items", "selectable", "selected", "colSpan", "cssClass", "dataField", "editorOptions", "editorType", "helpText", "isRequired", "itemType", "label", "name", "validationRules", "visibleIndex", "alignItemLabels", "caption", "colCount", "colCountByScreen", "tabPanelOptions", "tabs", "badge", "tabTemplate", "buttonOptions", "horizontalAlignment", "verticalAlignment", "locateInMenu", "location", "menuItemTemplate", "options", "showText", "widget", "height", "width", "imageAlt", "imageSrc", "acceptedValues", "formatName", "formatValues", "key", "showChevron", "linkAttr", "url", "heightRatio", "widthRatio", "expanded", "hasItems", "id", "parentId"] }, { type: i3$2.NgSelectComponent, selector: "ng-select", inputs: ["markFirst", "dropdownPosition", "loading", "closeOnSelect", "hideSelected", "selectOnTab", "bufferAmount", "selectableGroup", "selectableGroupAsModel", "searchFn", "trackByFn", "clearOnBackspace", "labelForId", "inputAttrs", "readonly", "searchWhileComposing", "minTermLength", "editableSearchTerm", "keyDownFn", "multiple", "addTag", "searchable", "clearable", "isOpen", "items", "compareWith", "clearSearchOnAdd", "bindLabel", "placeholder", "notFoundText", "typeToSearchText", "addTagText", "loadingText", "clearAllText", "virtualScroll", "openOnEnter", "appendTo", "bindValue", "appearance", "maxSelectedItems", "groupBy", "groupValue", "tabIndex", "typeahead"], outputs: ["blur", "focus", "change", "open", "close", "search", "clear", "add", "remove", "scroll", "scrollToEnd"] }], directives: [{ type: i2$6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i2$6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2$6.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2$6.RequiredValidator, selector: ":not([type=checkbox])[required][formControlName],:not([type=checkbox])[required][formControl],:not([type=checkbox])[required][ngModel]", inputs: ["required"] }, { type: i2$6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "async": i4$1.AsyncPipe, "translate": i1.TranslatePipe } });
|
|
18832
18831
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: AddToCollectionComponent, decorators: [{
|
|
18833
18832
|
type: Component,
|
|
18834
18833
|
args: [{
|
|
@@ -19183,7 +19182,7 @@ class ClipboardComponent {
|
|
|
19183
19182
|
}
|
|
19184
19183
|
}
|
|
19185
19184
|
ClipboardComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ClipboardComponent, deps: [{ token: FileManagerService }, { token: UserService }, { token: CustomToastrService }, { token: UserPreferencesService }], target: i0.ɵɵFactoryTarget.Component });
|
|
19186
|
-
ClipboardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ClipboardComponent, selector: "lib-clipboard", inputs: { clipboardItems: "clipboardItems", myCurrecntFolderData: "myCurrecntFolderData", preventedGroups: "preventedGroups", directory: "directory" }, outputs: { onClipboardClose: "onClipboardClose", onRefreshFolderTree: "onRefreshFolderTree" }, ngImport: i0, template: "<div class=\"clipboard-side-section relative\">\r\n\r\n <div class=\"p-3 h-full\">\r\n <div class=\"clipboard-header flex justify-between items-center border-b-2\">\r\n <span class=\"flex text-gray-500 font-bold items-center\">\r\n <span class=\"text-4xl bi bi-clipboard\"></span>\r\n <span class=\"mx-2 text-xl\">{{'clipboard' | translate}}</span>\r\n </span>\r\n <mat-icon class=\"close-icon text-gray-500 cursor-pointer\" (click)=\"closeClipboard()\"\r\n [matTooltip]=\"'BUTTONS.CLOSE' | translate\">close</mat-icon>\r\n </div>\r\n <!-- <div class=\"h-full font-bold d-flex justify-center items-center\" *ngIf=\"clipboardLoading\">\r\n {{ \"loading\" | translate }}\r\n </div> -->\r\n <div class=\"w-full h-px bg-gray-200 mb-3\" *ngIf=\"clipboardLoading\">\r\n <mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\r\n </div>\r\n <div class=\"clipboard-content flex flex-col justify-between items-between\">\r\n <div class=\"h-full flex justify-center items-center text-gray-500\"\r\n *ngIf=\"clipboardDocments.length === 0\">{{'no_clipboard_items' | translate}}</div>\r\n\r\n <div class=\"px-2 h-5/6 overflow-y-auto\" *ngIf=\"clipboardDocments.length > 0\">\r\n <div class=\"border-b-2\" *ngFor=\"let document of clipboardDocments\">\r\n <div class=\"py-1 w-82 flex items-center justify-between\">\r\n <div class=\"flex items-center w-5/6\">\r\n <mat-checkbox [(ngModel)]=\"document.isSelected\" (change)=\"checking()\"> </mat-checkbox>\r\n <div class=\"flex w-full\">\r\n <!-- <title-with-icon class=\"w-1/6 -my-1.5\" [context]=\"document\"\r\n [showTitle]=\"false\"></title-with-icon> -->\r\n <app-display-suitable-icon class=\"mx-1\" [data]=\"document\" [size]=\"'40px'\"></app-display-suitable-icon>\r\n\r\n <!-- -->\r\n <div *ngIf=\"document.isFile === 'File'\"\r\n class=\"justify-center flex flex-col flex-1 flex-grow-0 w-5/6\">\r\n <div class=\"text-base text-gray-500 font-bold truncate\"\r\n [title]=\"document.properties?.['file:content']?.['name']\"\r\n [alt]=\"document.properties?.['file:content']?.['name']\">\r\n {{document['title']}}\r\n </div>\r\n <div class=\"text-gray-500 text-sm text-nowrap\">\r\n {{((document.properties?.['file:content']?.['length']) / (1024 *\r\n 1024)).toFixed(2) }}\r\n MB\r\n </div>\r\n </div>\r\n <div class=\"\r\n d-flex\r\n items-center\r\n text-base text-gray-500\r\n font-bold\r\n \" *ngIf=\"document.isFile === 'Folder'\">\r\n {{ document?.title }}\r\n </div>\r\n </div>\r\n </div>\r\n <span [matTooltip]=\"'BUTTONS.REMOVE_CLIPBOARD' | translate\"\r\n class=\"cursor-pointer w-5 h-5 rounded-full border-2 flex justify-center items-center border-gray-500 \"\r\n (click)=\"deletefromClipboard(document)\">\r\n <span class=\"text-gray-500 bi bi-x text-lg flex items-center\"></span>\r\n </span>\r\n </div>\r\n <div class=\"text-md text-gray-500 text-center my-2\">\r\n <span *ngIf=\"document.canCopyToTarget && !document.canMoveToTarget\">{{'can_copy_only' |\r\n translate}}</span>\r\n <span *ngIf=\"!document.canCopyToTarget && document.canMoveToTarget\">{{'can_move_only' |\r\n translate}}</span>\r\n <span *ngIf=\"document.canCopyToTarget && document.canMoveToTarget\">{{'can_copy_and_move' |\r\n translate}}</span>\r\n <span\r\n *ngIf=\"!document.canCopyToTarget && !document.canMoveToTarget\">{{'can_not_copy_and_move'\r\n | translate}}</span>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"h-1/6 flex w-full justify-center items-center\">\r\n <button class=\"submission-button mx-2\" [disabled]=\"!enableCopy\"\r\n (click)=\"copyFromInsideClipboard()\">{{'BUTTONS.COPY' | translate}}</button>\r\n <button class=\"submission-button mx-2\" [disabled]=\"!enableMove\"\r\n (click)=\"moveFromInsideClipboard()\">{{'BUTTONS.MOVE' | translate}}</button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"bg-transparent absolute top-0 bottom-0 left-0 right-0 \" *ngIf=\"clipboardLoading\">\r\n\r\n </div>\r\n</div>", styles: [".clipboard-side-section{width:0px;overflow-x:hidden;height:91vh;background-color:#fff;overflow:hidden;border:1px solid lightgray;z-index:999;transition:.1s ease-in-out;border-bottom:none}.clipboard-side-section .clipboard-header{height:60px}.clipboard-side-section .clipboard-content{height:calc(100% - 60px)}\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"] }, { type: i7$
|
|
19185
|
+
ClipboardComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: ClipboardComponent, selector: "lib-clipboard", inputs: { clipboardItems: "clipboardItems", myCurrecntFolderData: "myCurrecntFolderData", preventedGroups: "preventedGroups", directory: "directory" }, outputs: { onClipboardClose: "onClipboardClose", onRefreshFolderTree: "onRefreshFolderTree" }, ngImport: i0, template: "<div class=\"clipboard-side-section relative\">\r\n\r\n <div class=\"p-3 h-full\">\r\n <div class=\"clipboard-header flex justify-between items-center border-b-2\">\r\n <span class=\"flex text-gray-500 font-bold items-center\">\r\n <span class=\"text-4xl bi bi-clipboard\"></span>\r\n <span class=\"mx-2 text-xl\">{{'clipboard' | translate}}</span>\r\n </span>\r\n <mat-icon class=\"close-icon text-gray-500 cursor-pointer\" (click)=\"closeClipboard()\"\r\n [matTooltip]=\"'BUTTONS.CLOSE' | translate\">close</mat-icon>\r\n </div>\r\n <!-- <div class=\"h-full font-bold d-flex justify-center items-center\" *ngIf=\"clipboardLoading\">\r\n {{ \"loading\" | translate }}\r\n </div> -->\r\n <div class=\"w-full h-px bg-gray-200 mb-3\" *ngIf=\"clipboardLoading\">\r\n <mat-progress-bar mode=\"indeterminate\"></mat-progress-bar>\r\n </div>\r\n <div class=\"clipboard-content flex flex-col justify-between items-between\">\r\n <div class=\"h-full flex justify-center items-center text-gray-500\"\r\n *ngIf=\"clipboardDocments.length === 0\">{{'no_clipboard_items' | translate}}</div>\r\n\r\n <div class=\"px-2 h-5/6 overflow-y-auto\" *ngIf=\"clipboardDocments.length > 0\">\r\n <div class=\"border-b-2\" *ngFor=\"let document of clipboardDocments\">\r\n <div class=\"py-1 w-82 flex items-center justify-between\">\r\n <div class=\"flex items-center w-5/6\">\r\n <mat-checkbox [(ngModel)]=\"document.isSelected\" (change)=\"checking()\"> </mat-checkbox>\r\n <div class=\"flex w-full\">\r\n <!-- <title-with-icon class=\"w-1/6 -my-1.5\" [context]=\"document\"\r\n [showTitle]=\"false\"></title-with-icon> -->\r\n <app-display-suitable-icon class=\"mx-1\" [data]=\"document\" [size]=\"'40px'\"></app-display-suitable-icon>\r\n\r\n <!-- -->\r\n <div *ngIf=\"document.isFile === 'File'\"\r\n class=\"justify-center flex flex-col flex-1 flex-grow-0 w-5/6\">\r\n <div class=\"text-base text-gray-500 font-bold truncate\"\r\n [title]=\"document.properties?.['file:content']?.['name']\"\r\n [alt]=\"document.properties?.['file:content']?.['name']\">\r\n {{document['title']}}\r\n </div>\r\n <div class=\"text-gray-500 text-sm text-nowrap\">\r\n {{((document.properties?.['file:content']?.['length']) / (1024 *\r\n 1024)).toFixed(2) }}\r\n MB\r\n </div>\r\n </div>\r\n <div class=\"\r\n d-flex\r\n items-center\r\n text-base text-gray-500\r\n font-bold\r\n \" *ngIf=\"document.isFile === 'Folder'\">\r\n {{ document?.title }}\r\n </div>\r\n </div>\r\n </div>\r\n <span [matTooltip]=\"'BUTTONS.REMOVE_CLIPBOARD' | translate\"\r\n class=\"cursor-pointer w-5 h-5 rounded-full border-2 flex justify-center items-center border-gray-500 \"\r\n (click)=\"deletefromClipboard(document)\">\r\n <span class=\"text-gray-500 bi bi-x text-lg flex items-center\"></span>\r\n </span>\r\n </div>\r\n <div class=\"text-md text-gray-500 text-center my-2\">\r\n <span *ngIf=\"document.canCopyToTarget && !document.canMoveToTarget\">{{'can_copy_only' |\r\n translate}}</span>\r\n <span *ngIf=\"!document.canCopyToTarget && document.canMoveToTarget\">{{'can_move_only' |\r\n translate}}</span>\r\n <span *ngIf=\"document.canCopyToTarget && document.canMoveToTarget\">{{'can_copy_and_move' |\r\n translate}}</span>\r\n <span\r\n *ngIf=\"!document.canCopyToTarget && !document.canMoveToTarget\">{{'can_not_copy_and_move'\r\n | translate}}</span>\r\n </div>\r\n </div>\r\n\r\n </div>\r\n <div class=\"h-1/6 flex w-full justify-center items-center\">\r\n <button class=\"submission-button mx-2\" [disabled]=\"!enableCopy\"\r\n (click)=\"copyFromInsideClipboard()\">{{'BUTTONS.COPY' | translate}}</button>\r\n <button class=\"submission-button mx-2\" [disabled]=\"!enableMove\"\r\n (click)=\"moveFromInsideClipboard()\">{{'BUTTONS.MOVE' | translate}}</button>\r\n </div>\r\n </div>\r\n </div>\r\n\r\n <div class=\"bg-transparent absolute top-0 bottom-0 left-0 right-0 \" *ngIf=\"clipboardLoading\">\r\n\r\n </div>\r\n</div>", styles: [".clipboard-side-section{width:0px;overflow-x:hidden;height:91vh;background-color:#fff;overflow:hidden;border:1px solid lightgray;z-index:999;transition:.1s ease-in-out;border-bottom:none}.clipboard-side-section .clipboard-header{height:60px}.clipboard-side-section .clipboard-content{height:calc(100% - 60px)}\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"] }, { type: i7$2.MatCheckbox, selector: "mat-checkbox", inputs: ["disableRipple", "color", "tabIndex", "aria-label", "aria-labelledby", "id", "labelPosition", "name", "required", "checked", "disabled", "indeterminate", "aria-describedby", "value"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { type: DisplaySuitableIconComponent, selector: "app-display-suitable-icon", inputs: ["data", "size", "dataType", "archive"] }], directives: [{ type: i2$2.MatTooltip, selector: "[matTooltip]", inputs: ["matTooltipShowDelay", "matTooltipHideDelay", "matTooltipTouchGestures", "matTooltipPosition", "matTooltipDisabled", "matTooltip", "matTooltipClass"], exportAs: ["matTooltip"] }, { type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i2$6.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2$6.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "translate": i1.TranslatePipe }, encapsulation: i0.ViewEncapsulation.None });
|
|
19187
19186
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: ClipboardComponent, decorators: [{
|
|
19188
19187
|
type: Component,
|
|
19189
19188
|
args: [{
|
|
@@ -19420,7 +19419,7 @@ class CreateDirectoryComponent extends BaseComponent {
|
|
|
19420
19419
|
}
|
|
19421
19420
|
}
|
|
19422
19421
|
CreateDirectoryComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CreateDirectoryComponent, deps: [{ token: FileManagerService }, { token: CustomToastrService }, { token: NuxeoDialogService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
19423
|
-
CreateDirectoryComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CreateDirectoryComponent, selector: "app-create-directory", inputs: { visible: "visible", rtlEnabled: "rtlEnabled", selectedItem: "selectedItem" }, outputs: { visibleChange: "visibleChange", refresh: "refresh" }, viewQueries: [{ propertyName: "form", first: true, predicate: DxFormComponent, descendants: true }, { propertyName: "contentTemplate", first: true, predicate: ["contentTemplate"], descendants: true }, { propertyName: "actionsTemplate", first: true, predicate: ["actionsTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "
|
|
19422
|
+
CreateDirectoryComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: CreateDirectoryComponent, selector: "app-create-directory", inputs: { visible: "visible", rtlEnabled: "rtlEnabled", selectedItem: "selectedItem" }, outputs: { visibleChange: "visibleChange", refresh: "refresh" }, viewQueries: [{ propertyName: "form", first: true, predicate: DxFormComponent, descendants: true }, { propertyName: "contentTemplate", first: true, predicate: ["contentTemplate"], descendants: true }, { propertyName: "actionsTemplate", first: true, predicate: ["actionsTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #contentTemplate>\r\n\t<div>\r\n\t\t<form>\r\n\t\t\t<dx-form\r\n\t\t\t\tclass=\"form-wrapper\"\r\n\t\t\t\t#form\r\n\t\t\t\t[formData]=\"formData\"\r\n\t\t\t\t[disabled]=\"loading\"\r\n\t\t\t>\r\n\t\t\t\t<dxi-item dataField=\"title\" editorType=\"dxTextBox\">\r\n\t\t\t\t\t<dxo-label text=\"{{ 'CREATE.TITLE' | translate }}\"></dxo-label>\r\n\t\t\t\t\t<dxi-validation-rule\r\n\t\t\t\t\t\ttype=\"required\"\r\n\t\t\t\t\t\tmessage=\"Title is required\"\r\n\t\t\t\t\t></dxi-validation-rule>\r\n\t\t\t\t</dxi-item>\r\n\t\t\t\t<dxi-item name=\"description\" editorType=\"dxTextBox\">\r\n\t\t\t\t\t<dxo-label text=\"{{ 'CREATE.DESCRIPTION' | translate }}\"></dxo-label>\r\n\t\t\t\t</dxi-item>\r\n\t\t\t</dx-form>\r\n\t\t</form>\r\n\t</div>\r\n</ng-template>\r\n\r\n<ng-template #actionsTemplate let-dialog=\"dialog\">\r\n\t<button\r\n\t\tclass=\"submission-button px-5\"\r\n\t\t(click)=\"dialog.executeAction(onSubmit, [$event])\"\r\n\t>\r\n\t\t{{ 'FILE_MANAGER.CREATE' | translate }}\r\n\t</button>\r\n</ng-template>\r\n", styles: [""], components: [{ type: i4$4.DxFormComponent, selector: "dx-form", inputs: ["accessKey", "activeStateEnabled", "alignItemLabels", "alignItemLabelsInAllGroups", "colCount", "colCountByScreen", "customizeItem", "disabled", "elementAttr", "focusStateEnabled", "formData", "height", "hint", "hoverStateEnabled", "items", "labelLocation", "labelMode", "minColWidth", "optionalMark", "readOnly", "requiredMark", "requiredMessage", "rtlEnabled", "screenByWidth", "scrollingEnabled", "showColonAfterLabel", "showOptionalMark", "showRequiredMark", "showValidationSummary", "tabIndex", "validationGroup", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onEditorEnterKey", "onFieldDataChanged", "onInitialized", "onOptionChanged", "accessKeyChange", "activeStateEnabledChange", "alignItemLabelsChange", "alignItemLabelsInAllGroupsChange", "colCountChange", "colCountByScreenChange", "customizeItemChange", "disabledChange", "elementAttrChange", "focusStateEnabledChange", "formDataChange", "heightChange", "hintChange", "hoverStateEnabledChange", "itemsChange", "labelLocationChange", "labelModeChange", "minColWidthChange", "optionalMarkChange", "readOnlyChange", "requiredMarkChange", "requiredMessageChange", "rtlEnabledChange", "screenByWidthChange", "scrollingEnabledChange", "showColonAfterLabelChange", "showOptionalMarkChange", "showRequiredMarkChange", "showValidationSummaryChange", "tabIndexChange", "validationGroupChange", "visibleChange", "widthChange"] }, { type: i5$2.DxiItemComponent, selector: "dxi-item", inputs: ["disabled", "html", "icon", "template", "text", "title", "titleTemplate", "visible", "onClick", "stylingMode", "type", "baseSize", "box", "ratio", "shrink", "elementAttr", "hint", "beginGroup", "closeMenuOnClick", "items", "selectable", "selected", "colSpan", "cssClass", "dataField", "editorOptions", "editorType", "helpText", "isRequired", "itemType", "label", "name", "validationRules", "visibleIndex", "alignItemLabels", "caption", "colCount", "colCountByScreen", "tabPanelOptions", "tabs", "badge", "tabTemplate", "buttonOptions", "horizontalAlignment", "verticalAlignment", "locateInMenu", "location", "menuItemTemplate", "options", "showText", "widget", "height", "width", "imageAlt", "imageSrc", "acceptedValues", "formatName", "formatValues", "key", "showChevron", "linkAttr", "url", "heightRatio", "widthRatio", "expanded", "hasItems", "id", "parentId"] }, { type: i5$2.DxoLabelComponent, selector: "dxo-label", inputs: ["connectorColor", "connectorWidth", "customizeText", "font", "format", "indent", "visible", "horizontalAlignment", "position", "text", "verticalAlignment", "alignment", "customizeHint", "displayMode", "indentFromAxis", "overlappingBehavior", "rotationAngle", "staggeringSpacing", "template", "textOverflow", "wordWrap", "argumentFormat", "backgroundColor", "border", "connector", "displayFormat", "horizontalOffset", "showForZeroValues", "verticalOffset", "hideFirstOrLast", "indentFromTick", "useRangeColors", "location", "showColon", "radialOffset", "topIndent", "shadow", "useNodeColors", "dataField", "enabled"] }, { type: i5$2.DxiValidationRuleComponent, selector: "dxi-validation-rule", inputs: ["message", "trim", "type", "ignoreEmptyValue", "max", "min", "reevaluate", "validationCallback", "comparisonTarget", "comparisonType", "pattern"] }], directives: [{ type: i2$6.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i2$6.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2$6.NgForm, selector: "form:not([ngNoForm]):not([formGroup]),ng-form,[ngForm]", inputs: ["ngFormOptions"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }], pipes: { "translate": i1.TranslatePipe } });
|
|
19424
19423
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: CreateDirectoryComponent, decorators: [{
|
|
19425
19424
|
type: Component,
|
|
19426
19425
|
args: [{
|
|
@@ -19474,8 +19473,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
19474
19473
|
}], ctorParameters: function () { return [{ type: NuxeoService }]; } });
|
|
19475
19474
|
|
|
19476
19475
|
class DialogMangmentService {
|
|
19477
|
-
constructor(
|
|
19478
|
-
this.
|
|
19476
|
+
constructor(nuxeoDialogService) {
|
|
19477
|
+
this.nuxeoDialogService = nuxeoDialogService;
|
|
19479
19478
|
this.minizedModal = false;
|
|
19480
19479
|
this.creationMode = '';
|
|
19481
19480
|
this.fileType = '';
|
|
@@ -19486,46 +19485,50 @@ class DialogMangmentService {
|
|
|
19486
19485
|
this.fileType = type;
|
|
19487
19486
|
this.addingFrom = source;
|
|
19488
19487
|
this.creationMode = creationMode;
|
|
19489
|
-
|
|
19490
|
-
|
|
19491
|
-
|
|
19492
|
-
|
|
19493
|
-
panelClass: 'watcher-dialog-container',
|
|
19488
|
+
const options = {
|
|
19489
|
+
component,
|
|
19490
|
+
width,
|
|
19491
|
+
height,
|
|
19494
19492
|
data: Object.assign({}, data),
|
|
19495
|
-
|
|
19496
|
-
}
|
|
19497
|
-
|
|
19493
|
+
panelClass: 'watcher-dialog-container'
|
|
19494
|
+
};
|
|
19495
|
+
this.nuxeoDialogService
|
|
19496
|
+
.open(options)
|
|
19497
|
+
.afterClosed()
|
|
19498
|
+
.subscribe((res) => {
|
|
19498
19499
|
if (res) {
|
|
19499
|
-
//console.log('open minismed');
|
|
19500
19500
|
this.minizedModal = true;
|
|
19501
19501
|
}
|
|
19502
19502
|
});
|
|
19503
19503
|
}
|
|
19504
19504
|
openMinimzedModal(component, width, height, data = {}) {
|
|
19505
19505
|
this.minizedModal = false;
|
|
19506
|
-
|
|
19507
|
-
|
|
19508
|
-
|
|
19509
|
-
|
|
19506
|
+
//TODO Find a way for disablie closing
|
|
19507
|
+
const options = {
|
|
19508
|
+
component,
|
|
19509
|
+
width,
|
|
19510
|
+
height,
|
|
19510
19511
|
data: Object.assign({}, data),
|
|
19511
|
-
|
|
19512
|
-
}
|
|
19513
|
-
|
|
19512
|
+
panelClass: 'watcher-dialog-container'
|
|
19513
|
+
};
|
|
19514
|
+
this.nuxeoDialogService
|
|
19515
|
+
.open(options)
|
|
19516
|
+
.afterClosed()
|
|
19517
|
+
.subscribe((res) => {
|
|
19514
19518
|
if (res) {
|
|
19515
|
-
//console.log('open minismed');
|
|
19516
19519
|
this.minizedModal = true;
|
|
19517
19520
|
}
|
|
19518
19521
|
});
|
|
19519
19522
|
}
|
|
19520
19523
|
}
|
|
19521
|
-
DialogMangmentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DialogMangmentService, deps: [{ token:
|
|
19524
|
+
DialogMangmentService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DialogMangmentService, deps: [{ token: NuxeoDialogService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
19522
19525
|
DialogMangmentService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DialogMangmentService, providedIn: 'root' });
|
|
19523
19526
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: DialogMangmentService, decorators: [{
|
|
19524
19527
|
type: Injectable,
|
|
19525
19528
|
args: [{
|
|
19526
19529
|
providedIn: 'root'
|
|
19527
19530
|
}]
|
|
19528
|
-
}], ctorParameters: function () { return [{ type:
|
|
19531
|
+
}], ctorParameters: function () { return [{ type: NuxeoDialogService }]; } });
|
|
19529
19532
|
|
|
19530
19533
|
class GlobalPdfTron {
|
|
19531
19534
|
constructor(baseHref) {
|
|
@@ -21464,7 +21467,7 @@ class MoveComponent extends BaseComponent {
|
|
|
21464
21467
|
}
|
|
21465
21468
|
}
|
|
21466
21469
|
MoveComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MoveComponent, deps: [{ token: FileManagerService }, { token: CustomToastrService }, { token: NuxeoDialogService }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Component });
|
|
21467
|
-
MoveComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MoveComponent, selector: "app-move", inputs: { visible: "visible", rtlEnabled: "rtlEnabled", selectedItem: "selectedItem", rootFolder: "rootFolder", rootEntries: "rootEntries", selectedItems: "selectedItems", directory: "directory", pageConfigurations: "pageConfigurations" }, outputs: { visibleChange: "visibleChange", getSelectedFolder: "getSelectedFolder" }, viewQueries: [{ propertyName: "form", first: true, predicate: DxFormComponent, descendants: true }, { propertyName: "contentTemplate", first: true, predicate: ["contentTemplate"], descendants: true }, { propertyName: "actionsTemplate", first: true, predicate: ["actionsTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "
|
|
21470
|
+
MoveComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: MoveComponent, selector: "app-move", inputs: { visible: "visible", rtlEnabled: "rtlEnabled", selectedItem: "selectedItem", rootFolder: "rootFolder", rootEntries: "rootEntries", selectedItems: "selectedItems", directory: "directory", pageConfigurations: "pageConfigurations" }, outputs: { visibleChange: "visibleChange", getSelectedFolder: "getSelectedFolder" }, viewQueries: [{ propertyName: "form", first: true, predicate: DxFormComponent, descendants: true }, { propertyName: "contentTemplate", first: true, predicate: ["contentTemplate"], descendants: true }, { propertyName: "actionsTemplate", first: true, predicate: ["actionsTemplate"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<ng-template #contentTemplate>\r\n\t<div class=\"p-4\">\r\n\t\t<dx-scroll-view width=\"100%\" height=\"100%\">\r\n\t\t\t<div class=\"form\">\r\n\t\t\t\t<dx-tree-view\r\n\t\t\t\t\t[rtlEnabled]=\"rtlEnabled\"\r\n\t\t\t\t\tid=\"treeList\"\r\n\t\t\t\t\t[rootValue]=\"rootFolder\"\r\n\t\t\t\t\tkeyExpr=\"id\"\r\n\t\t\t\t\tdisplayExpr=\"name\"\r\n\t\t\t\t\thasItemsExpr=\"isExpanded\"\r\n\t\t\t\t\tdataStructure=\"plain\"\r\n\t\t\t\t\t[createChildren]=\"createTreeNodeChildren\"\r\n\t\t\t\t\t[width]=\"465\"\r\n\t\t\t\t\t(onItemClick)=\"selectItem($event)\"\r\n\t\t\t\t>\r\n\t\t\t\t</dx-tree-view>\r\n\t\t\t</div>\r\n\t\t</dx-scroll-view>\r\n\t</div>\r\n</ng-template>\r\n\r\n<ng-template #actionsTemplate let-dialog=\"dialog\">\r\n\t<button\r\n\t\t[disabled]=\"disable\"\r\n\t\tclass=\"submission-button px-5\"\r\n\t\t(click)=\"dialog.executeAction(move, [false])\"\r\n\t>\r\n\t\t{{ 'BUTTONS.MOVE' | translate }}\r\n\t</button>\r\n</ng-template>\r\n", styles: [""], components: [{ type: i4$4.DxScrollViewComponent, selector: "dx-scroll-view", inputs: ["bounceEnabled", "direction", "disabled", "elementAttr", "height", "pulledDownText", "pullingDownText", "reachBottomText", "refreshingText", "rtlEnabled", "scrollByContent", "scrollByThumb", "showScrollbar", "useNative", "width"], outputs: ["onDisposing", "onInitialized", "onOptionChanged", "onPullDown", "onReachBottom", "onScroll", "onUpdated", "bounceEnabledChange", "directionChange", "disabledChange", "elementAttrChange", "heightChange", "pulledDownTextChange", "pullingDownTextChange", "reachBottomTextChange", "refreshingTextChange", "rtlEnabledChange", "scrollByContentChange", "scrollByThumbChange", "showScrollbarChange", "useNativeChange", "widthChange"] }, { type: i4$4.DxTreeViewComponent, selector: "dx-tree-view", inputs: ["accessKey", "activeStateEnabled", "animationEnabled", "collapseIcon", "createChildren", "dataSource", "dataStructure", "disabled", "disabledExpr", "displayExpr", "elementAttr", "expandAllEnabled", "expandedExpr", "expandEvent", "expandIcon", "expandNodesRecursive", "focusStateEnabled", "hasItemsExpr", "height", "hint", "hoverStateEnabled", "itemHoldTimeout", "items", "itemsExpr", "itemTemplate", "keyExpr", "noDataText", "parentIdExpr", "rootValue", "rtlEnabled", "scrollDirection", "searchEditorOptions", "searchEnabled", "searchExpr", "searchMode", "searchTimeout", "searchValue", "selectAllText", "selectByClick", "selectedExpr", "selectionMode", "selectNodesRecursive", "showCheckBoxesMode", "tabIndex", "useNativeScrolling", "virtualModeEnabled", "visible", "width"], outputs: ["onContentReady", "onDisposing", "onInitialized", "onItemClick", "onItemCollapsed", "onItemContextMenu", "onItemExpanded", "onItemHold", "onItemRendered", "onItemSelectionChanged", "onOptionChanged", "onSelectAllValueChanged", "onSelectionChanged", "accessKeyChange", "activeStateEnabledChange", "animationEnabledChange", "collapseIconChange", "createChildrenChange", "dataSourceChange", "dataStructureChange", "disabledChange", "disabledExprChange", "displayExprChange", "elementAttrChange", "expandAllEnabledChange", "expandedExprChange", "expandEventChange", "expandIconChange", "expandNodesRecursiveChange", "focusStateEnabledChange", "hasItemsExprChange", "heightChange", "hintChange", "hoverStateEnabledChange", "itemHoldTimeoutChange", "itemsChange", "itemsExprChange", "itemTemplateChange", "keyExprChange", "noDataTextChange", "parentIdExprChange", "rootValueChange", "rtlEnabledChange", "scrollDirectionChange", "searchEditorOptionsChange", "searchEnabledChange", "searchExprChange", "searchModeChange", "searchTimeoutChange", "searchValueChange", "selectAllTextChange", "selectByClickChange", "selectedExprChange", "selectionModeChange", "selectNodesRecursiveChange", "showCheckBoxesModeChange", "tabIndexChange", "useNativeScrollingChange", "virtualModeEnabledChange", "visibleChange", "widthChange"] }], pipes: { "translate": i1.TranslatePipe } });
|
|
21468
21471
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: MoveComponent, decorators: [{
|
|
21469
21472
|
type: Component,
|
|
21470
21473
|
args: [{
|
|
@@ -22253,10 +22256,11 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
22253
22256
|
}] }, { type: DocumentScanService }, { type: i0.Injector }]; } });
|
|
22254
22257
|
|
|
22255
22258
|
class SharedDocsService {
|
|
22256
|
-
constructor(nuxeoService, dialog, adapter) {
|
|
22259
|
+
constructor(nuxeoService, dialog, adapter, nuxeoDialogService) {
|
|
22257
22260
|
this.nuxeoService = nuxeoService;
|
|
22258
22261
|
this.dialog = dialog;
|
|
22259
22262
|
this.adapter = adapter;
|
|
22263
|
+
this.nuxeoDialogService = nuxeoDialogService;
|
|
22260
22264
|
}
|
|
22261
22265
|
shareDocumentWithUser(context, DocId) {
|
|
22262
22266
|
return from(this.nuxeoService.nuxeoClient
|
|
@@ -22284,8 +22288,8 @@ class SharedDocsService {
|
|
|
22284
22288
|
.execute({
|
|
22285
22289
|
headers: {
|
|
22286
22290
|
properties: '*',
|
|
22287
|
-
|
|
22288
|
-
}
|
|
22291
|
+
'fetch-document': 'sharedInfo:sharedList'
|
|
22292
|
+
}
|
|
22289
22293
|
})).pipe(catchError((err) => {
|
|
22290
22294
|
//console.log(err);
|
|
22291
22295
|
throw err;
|
|
@@ -22298,8 +22302,8 @@ class SharedDocsService {
|
|
|
22298
22302
|
.execute({
|
|
22299
22303
|
headers: {
|
|
22300
22304
|
properties: '*',
|
|
22301
|
-
|
|
22302
|
-
}
|
|
22305
|
+
'fetch-document': 'sharedInfo:sharedList'
|
|
22306
|
+
}
|
|
22303
22307
|
})).pipe(catchError((err) => {
|
|
22304
22308
|
//console.log(err);
|
|
22305
22309
|
throw err;
|
|
@@ -22324,24 +22328,17 @@ class SharedDocsService {
|
|
|
22324
22328
|
throw err;
|
|
22325
22329
|
}));
|
|
22326
22330
|
}
|
|
22327
|
-
openShareDialog(selectedItem
|
|
22328
|
-
|
|
22329
|
-
|
|
22330
|
-
|
|
22331
|
-
|
|
22332
|
-
|
|
22333
|
-
|
|
22334
|
-
|
|
22335
|
-
|
|
22336
|
-
|
|
22337
|
-
|
|
22338
|
-
},
|
|
22339
|
-
width: '40%',
|
|
22340
|
-
height: '85%',
|
|
22341
|
-
panelClass: 'share-dialog-wrapper'
|
|
22342
|
-
};
|
|
22343
|
-
}
|
|
22344
|
-
this.dialog.open(ShareDialogComponent, conf);
|
|
22331
|
+
openShareDialog(selectedItem) {
|
|
22332
|
+
this.nuxeoDialogService.open({
|
|
22333
|
+
component: ShareDialogComponent,
|
|
22334
|
+
width: '40%',
|
|
22335
|
+
height: '85%',
|
|
22336
|
+
panelClass: 'share-dialog-wrapper',
|
|
22337
|
+
data: {
|
|
22338
|
+
selectedItem
|
|
22339
|
+
}
|
|
22340
|
+
//disableClose: true,
|
|
22341
|
+
});
|
|
22345
22342
|
}
|
|
22346
22343
|
getSharesByMe(selectedItemId, getAllInfo) {
|
|
22347
22344
|
let sharedData = [];
|
|
@@ -22350,7 +22347,7 @@ class SharedDocsService {
|
|
|
22350
22347
|
return this.getMyShares().pipe(switchMap((res) => {
|
|
22351
22348
|
if (res) {
|
|
22352
22349
|
sharedData = res.entries.map((res) => this.adapter.adaptIn(res, {
|
|
22353
|
-
sharedList: 'sharedInfo:sharedList'
|
|
22350
|
+
sharedList: 'sharedInfo:sharedList'
|
|
22354
22351
|
}));
|
|
22355
22352
|
sharedData.forEach((element) => {
|
|
22356
22353
|
if (selectedItemId === element.uid) {
|
|
@@ -22370,14 +22367,14 @@ class SharedDocsService {
|
|
|
22370
22367
|
}));
|
|
22371
22368
|
}
|
|
22372
22369
|
}
|
|
22373
|
-
SharedDocsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SharedDocsService, deps: [{ token: NuxeoService }, { token: i1$3.MatDialog }, { token: AdapterService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
22370
|
+
SharedDocsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SharedDocsService, deps: [{ token: NuxeoService }, { token: i1$3.MatDialog }, { token: AdapterService }, { token: NuxeoDialogService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
22374
22371
|
SharedDocsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SharedDocsService, providedIn: 'root' });
|
|
22375
22372
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: SharedDocsService, decorators: [{
|
|
22376
22373
|
type: Injectable,
|
|
22377
22374
|
args: [{
|
|
22378
22375
|
providedIn: 'root'
|
|
22379
22376
|
}]
|
|
22380
|
-
}], ctorParameters: function () { return [{ type: NuxeoService }, { type: i1$3.MatDialog }, { type: AdapterService }]; } });
|
|
22377
|
+
}], ctorParameters: function () { return [{ type: NuxeoService }, { type: i1$3.MatDialog }, { type: AdapterService }, { type: NuxeoDialogService }]; } });
|
|
22381
22378
|
|
|
22382
22379
|
class DepartmentManagementService {
|
|
22383
22380
|
constructor(nuxeoService) {
|
|
@@ -23774,44 +23771,46 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
23774
23771
|
}] }, { type: i0.Injector }]; } });
|
|
23775
23772
|
|
|
23776
23773
|
class PermissionsTemplateComponent {
|
|
23777
|
-
constructor(permissionService, tosterService,
|
|
23774
|
+
constructor(permissionService, tosterService, nuxeoDialogService) {
|
|
23778
23775
|
this.permissionService = permissionService;
|
|
23779
23776
|
this.tosterService = tosterService;
|
|
23780
|
-
this.
|
|
23777
|
+
this.nuxeoDialogService = nuxeoDialogService;
|
|
23781
23778
|
this.allowDeleteAndEdit = false;
|
|
23782
23779
|
this.permissionsArray = [];
|
|
23783
23780
|
this.getPermissions = new EventEmitter();
|
|
23784
23781
|
}
|
|
23785
|
-
ngOnInit() {
|
|
23786
|
-
}
|
|
23782
|
+
ngOnInit() { }
|
|
23787
23783
|
deletePermission(permission) {
|
|
23788
|
-
this.permissionService
|
|
23784
|
+
this.permissionService
|
|
23785
|
+
.deleteLocalPermissions(this.documentId, permission)
|
|
23786
|
+
.subscribe((res) => {
|
|
23789
23787
|
this.getPermissions.emit();
|
|
23790
|
-
this.tosterService.show('success', 'TOASTER.SUCCESS',
|
|
23791
|
-
}, err => {
|
|
23788
|
+
this.tosterService.show('success', 'TOASTER.SUCCESS', 'TOASTER.PERMISSION_REMOVE_SUCCESS');
|
|
23789
|
+
}, (err) => {
|
|
23792
23790
|
this.tosterService.show('error', 'TOASTER.ERROR', 'TOASTER.PERMISSION_REMOVE_FAIL');
|
|
23793
23791
|
});
|
|
23794
23792
|
}
|
|
23795
23793
|
editPermission(permission, username, userVisiblePermissions, begin, end) {
|
|
23796
|
-
const dialogConfig = new MatDialogConfig();
|
|
23797
|
-
dialogConfig.disableClose = false;
|
|
23798
|
-
dialogConfig.autoFocus = true;
|
|
23799
|
-
dialogConfig.data = {
|
|
23800
|
-
id: this.documentId,
|
|
23801
|
-
rights: this.userVisiblePermissions,
|
|
23802
|
-
state: "update",
|
|
23803
|
-
aclId: permission,
|
|
23804
|
-
username: username,
|
|
23805
|
-
editableRight: userVisiblePermissions,
|
|
23806
|
-
editableBegin: begin,
|
|
23807
|
-
editableEnd: end,
|
|
23808
|
-
};
|
|
23809
|
-
dialogConfig.width = '35%';
|
|
23810
|
-
dialogConfig.height = '70%';
|
|
23811
23794
|
// befor opening modal we diable clickout side effect to prevent details side menu from closing when clicking in the modal
|
|
23812
23795
|
this.permissionService.disableClickOutSide = true;
|
|
23813
|
-
let addDialogRef = this.
|
|
23814
|
-
|
|
23796
|
+
let addDialogRef = this.nuxeoDialogService.open({
|
|
23797
|
+
component: AddPermissionsDialogComponent,
|
|
23798
|
+
width: '35%',
|
|
23799
|
+
height: '70%',
|
|
23800
|
+
panelClass: 'watcher-dialog-container',
|
|
23801
|
+
data: {
|
|
23802
|
+
id: this.documentId,
|
|
23803
|
+
rights: this.userVisiblePermissions,
|
|
23804
|
+
state: 'update',
|
|
23805
|
+
aclId: permission,
|
|
23806
|
+
username: username,
|
|
23807
|
+
editableRight: userVisiblePermissions,
|
|
23808
|
+
editableBegin: begin,
|
|
23809
|
+
editableEnd: end
|
|
23810
|
+
}
|
|
23811
|
+
//disableClose: true,
|
|
23812
|
+
});
|
|
23813
|
+
addDialogRef.afterClosed().subscribe((res) => {
|
|
23815
23814
|
// return click outside effect to work to close side menu when clicking out side it
|
|
23816
23815
|
this.permissionService.disableClickOutSide = false;
|
|
23817
23816
|
this.getPermissions.emit();
|
|
@@ -23820,15 +23819,17 @@ class PermissionsTemplateComponent {
|
|
|
23820
23819
|
openDialog(permission) {
|
|
23821
23820
|
// befor opening modal we diable clickout side effect to prevent details side menu from closing when clicking in the modal
|
|
23822
23821
|
this.permissionService.disableClickOutSide = true;
|
|
23823
|
-
let dialogRef = this.
|
|
23822
|
+
let dialogRef = this.nuxeoDialogService.open({
|
|
23823
|
+
component: AddPermissionsDialogComponent,
|
|
23824
23824
|
width: '510px',
|
|
23825
|
+
panelClass: 'watcher-dialog-container',
|
|
23825
23826
|
data: {
|
|
23826
23827
|
title: 'confirmDialog.confirm',
|
|
23827
23828
|
message: 'confirmDialog.Rem_Per',
|
|
23828
23829
|
confirmButton: `BUTTONS.Remove`,
|
|
23829
|
-
cancelButton:
|
|
23830
|
-
}
|
|
23831
|
-
disableClose: true,
|
|
23830
|
+
cancelButton: 'BUTTONS.Cancel'
|
|
23831
|
+
}
|
|
23832
|
+
//disableClose: true,
|
|
23832
23833
|
});
|
|
23833
23834
|
dialogRef.afterClosed().subscribe((result) => {
|
|
23834
23835
|
// return click outside effect to work to close side menu when clicking out side it
|
|
@@ -23837,27 +23838,9 @@ class PermissionsTemplateComponent {
|
|
|
23837
23838
|
this.deletePermission(permission);
|
|
23838
23839
|
}
|
|
23839
23840
|
});
|
|
23840
|
-
// const dialogRef = this.fuseConfirmationService.open(
|
|
23841
|
-
// {
|
|
23842
|
-
// dismissible: true,
|
|
23843
|
-
// title: this.translateService.instant("confirmDialog.confirm"),
|
|
23844
|
-
// message: this.translateService.instant("confirmDialog.Rem_Per"),
|
|
23845
|
-
// actions: {
|
|
23846
|
-
// confirm: {
|
|
23847
|
-
// show: true,
|
|
23848
|
-
// label: this.translateService.instant("BUTTONS.Remove"),
|
|
23849
|
-
// color: "warn"
|
|
23850
|
-
// },
|
|
23851
|
-
// cancel: {
|
|
23852
|
-
// show: true,
|
|
23853
|
-
// label: this.translateService.instant("BUTTONS.Cancel"),
|
|
23854
|
-
// }
|
|
23855
|
-
// }
|
|
23856
|
-
// }
|
|
23857
|
-
// );
|
|
23858
23841
|
}
|
|
23859
23842
|
}
|
|
23860
|
-
PermissionsTemplateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PermissionsTemplateComponent, deps: [{ token: PermissionService }, { token: CustomToastrService }, { token:
|
|
23843
|
+
PermissionsTemplateComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PermissionsTemplateComponent, deps: [{ token: PermissionService }, { token: CustomToastrService }, { token: NuxeoDialogService }], target: i0.ɵɵFactoryTarget.Component });
|
|
23861
23844
|
PermissionsTemplateComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PermissionsTemplateComponent, selector: "app-permissions-template", inputs: { allowDeleteAndEdit: "allowDeleteAndEdit", documentId: "documentId", userVisiblePermissions: "userVisiblePermissions", permissionsArray: "permissionsArray" }, outputs: { getPermissions: "getPermissions" }, ngImport: i0, template: "<div class=\"flex flex-col\">\r\n <div *ngFor=\"let p of permissionsArray\">\r\n <!-- Info -->\r\n <div class=\"flex single-permssion\" *ngIf=\"(p.granted && p.username['entity-type']== 'user') || (p.granted && (p.username['entity-type']== 'group' && (p.username.id != 'administrators' && p.username.id != 'members')))\">\r\n <mat-icon>lock</mat-icon>\r\n <div class=\"flex flex-auto justify-between ml-3\">\r\n <!-- Info -->\r\n <div>\r\n <div class=\"font-bold text-base text-gray-900 w-64\">\r\n <span *ngIf=\"p.username['entity-type'] == 'user'; else group\">\r\n {{p.username.fullName}}\r\n </span>\r\n <ng-template #group>\r\n {{p.username.grouplabel}}\r\n </ng-template>\r\n - {{p.permissionLabel}}</div>\r\n <div class=\"mt-0.5 text-secondary\">\r\n <div class=\"flex flex-row justify-between\">\r\n <div class=\"flex flex-col\">\r\n <div *ngIf=\"p.begin != null;else permanent\">\r\n {{p.begin | date:'dd/MM/yyyy'}}\r\n <span *ngIf=\"p.end != null\">- {{ p.end | date:'dd/MM/yyyy' }}</span>\r\n </div>\r\n <ng-template #permanent>\r\n <h1>{{\"permission.permanent\" | translate }}</h1>\r\n </ng-template>\r\n <div class=\"text-secondary\">\r\n <ng-container *ngIf=\"p.creator != null && p.creator != 'system'; else grantedBySystemAdmin\">\r\n {{\"permission.granted\" | translate }} {{p.creator['fullName']}}\r\n </ng-container>\r\n <ng-template #grantedBySystemAdmin>\r\n {{\"permission.grantedBySystemAdmin\" | translate }}\r\n </ng-template>\r\n </div>\r\n </div>\r\n <!-- Actions -->\r\n <div class=\"flex\" *ngIf=\"allowDeleteAndEdit && p.currentUserIsPermissionOwner \r\n && p.permission != 'Everything'\">\r\n <button mat-icon-button\r\n (click)=\"editPermission(p.id,p.username,p.permission,p.begin,p.end)\">\r\n <mat-icon [svgIcon]=\"'heroicons_outline:pencil-alt'\"></mat-icon>\r\n </button>\r\n \r\n <button mat-icon-button (click)=\"openDialog(p.id)\">\r\n <mat-icon [svgIcon]=\"'heroicons_outline:trash'\"></mat-icon>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>", styles: [".single-permssion{box-shadow:0 0 12.5px #0000001a;border-radius:8px;padding:15px;margin:10px;font-size:12px}\n"], components: [{ type: i2$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i4$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "date": i4$1.DatePipe, "translate": i1.TranslatePipe } });
|
|
23862
23845
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PermissionsTemplateComponent, decorators: [{
|
|
23863
23846
|
type: Component,
|
|
@@ -23866,7 +23849,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
23866
23849
|
templateUrl: './permissions-template.component.html',
|
|
23867
23850
|
styleUrls: ['./permissions-template.component.scss']
|
|
23868
23851
|
}]
|
|
23869
|
-
}], ctorParameters: function () { return [{ type: PermissionService }, { type: CustomToastrService }, { type:
|
|
23852
|
+
}], ctorParameters: function () { return [{ type: PermissionService }, { type: CustomToastrService }, { type: NuxeoDialogService }]; }, propDecorators: { allowDeleteAndEdit: [{
|
|
23870
23853
|
type: Input
|
|
23871
23854
|
}], documentId: [{
|
|
23872
23855
|
type: Input
|
|
@@ -23880,7 +23863,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
23880
23863
|
}] } });
|
|
23881
23864
|
|
|
23882
23865
|
class PermissionsComponent {
|
|
23883
|
-
constructor(permissionService, addPermissionsDialog, tosterService, translateService, nuxeoService, userServ, evaluatorService) {
|
|
23866
|
+
constructor(permissionService, addPermissionsDialog, tosterService, translateService, nuxeoService, userServ, evaluatorService, nuxeoDialogService) {
|
|
23884
23867
|
this.permissionService = permissionService;
|
|
23885
23868
|
this.addPermissionsDialog = addPermissionsDialog;
|
|
23886
23869
|
this.tosterService = tosterService;
|
|
@@ -23888,6 +23871,7 @@ class PermissionsComponent {
|
|
|
23888
23871
|
this.nuxeoService = nuxeoService;
|
|
23889
23872
|
this.userServ = userServ;
|
|
23890
23873
|
this.evaluatorService = evaluatorService;
|
|
23874
|
+
this.nuxeoDialogService = nuxeoDialogService;
|
|
23891
23875
|
this.sourcePage = '';
|
|
23892
23876
|
this.subscriptions$ = [];
|
|
23893
23877
|
this.localPermissions = [];
|
|
@@ -23903,17 +23887,19 @@ class PermissionsComponent {
|
|
|
23903
23887
|
}
|
|
23904
23888
|
ngOnInit() {
|
|
23905
23889
|
this.subscriptions$.concat([
|
|
23906
|
-
this.permissionService.createAndAddAnother.subscribe(res => {
|
|
23890
|
+
this.permissionService.createAndAddAnother.subscribe((res) => {
|
|
23907
23891
|
this.getPermissions();
|
|
23908
23892
|
})
|
|
23909
23893
|
]);
|
|
23910
23894
|
this.loading = true;
|
|
23911
23895
|
this.checkIfUserCanDoActionsOnPermissions();
|
|
23912
23896
|
this.getPermissions();
|
|
23913
|
-
|
|
23897
|
+
this.inheritedPermissions.length > 0
|
|
23898
|
+
? (this.status = 'unblock')
|
|
23899
|
+
: (this.status = 'block');
|
|
23914
23900
|
}
|
|
23915
23901
|
addPermissionLabel(arr, permissionArr) {
|
|
23916
|
-
arr.forEach(element => {
|
|
23902
|
+
arr.forEach((element) => {
|
|
23917
23903
|
if (!this.isItemContainAdministratorGroup(element)) {
|
|
23918
23904
|
element.permissionLabel = this.translateService.instant(`rights.${element.permission}`);
|
|
23919
23905
|
permissionArr.push(element);
|
|
@@ -23925,11 +23911,13 @@ class PermissionsComponent {
|
|
|
23925
23911
|
if (element.granted === false) {
|
|
23926
23912
|
isAdministrator = true;
|
|
23927
23913
|
}
|
|
23928
|
-
else if (element.username &&
|
|
23914
|
+
else if (element.username &&
|
|
23915
|
+
element.username['entity-type'] === 'group' &&
|
|
23916
|
+
element.username.groupname === 'administrators') {
|
|
23929
23917
|
isAdministrator = true;
|
|
23930
23918
|
}
|
|
23931
23919
|
else if (element.username.userGroups) {
|
|
23932
|
-
element.username.userGroups.map(group => {
|
|
23920
|
+
element.username.userGroups.map((group) => {
|
|
23933
23921
|
if (group.name === 'administrators') {
|
|
23934
23922
|
isAdministrator = true;
|
|
23935
23923
|
}
|
|
@@ -23938,16 +23926,23 @@ class PermissionsComponent {
|
|
|
23938
23926
|
return isAdministrator;
|
|
23939
23927
|
}
|
|
23940
23928
|
getPermissions() {
|
|
23941
|
-
this.subscriptions$.concat([
|
|
23929
|
+
this.subscriptions$.concat([
|
|
23930
|
+
this.permissionService
|
|
23931
|
+
.getPermissionsForDocument(this.documentId)
|
|
23932
|
+
.subscribe((res) => {
|
|
23942
23933
|
this.permissionsType = res.contextParameters.acls;
|
|
23943
|
-
this.userVisiblePermissions =
|
|
23934
|
+
this.userVisiblePermissions =
|
|
23935
|
+
res.contextParameters.userVisiblePermissions;
|
|
23944
23936
|
for (let p of this.permissionsType) {
|
|
23945
23937
|
if (p.name == 'local') {
|
|
23946
23938
|
this.localPermissions = [];
|
|
23947
23939
|
this.addPermissionLabel(p.aces, this.localPermissions);
|
|
23948
|
-
this.localPermissions = this.localPermissions.map(element => {
|
|
23940
|
+
this.localPermissions = this.localPermissions.map((element) => {
|
|
23949
23941
|
var _a, _b;
|
|
23950
|
-
if (element.creator === null ||
|
|
23942
|
+
if (element.creator === null ||
|
|
23943
|
+
element.creator === 'system' ||
|
|
23944
|
+
((_b = (_a = element.creator) === null || _a === void 0 ? void 0 : _a.properties) === null || _b === void 0 ? void 0 : _b.username) !=
|
|
23945
|
+
this.nuxeoService.nuxeoClient.user.properties.username) {
|
|
23951
23946
|
element['currentUserIsPermissionOwner'] = false;
|
|
23952
23947
|
}
|
|
23953
23948
|
else {
|
|
@@ -23973,62 +23968,77 @@ class PermissionsComponent {
|
|
|
23973
23968
|
this.addPermissionLabel(p.aces, this.workflowPermissions);
|
|
23974
23969
|
}
|
|
23975
23970
|
}
|
|
23976
|
-
|
|
23971
|
+
this.inheritedPermissions.length == 0
|
|
23972
|
+
? (this.status = 'block')
|
|
23973
|
+
: (this.status = 'unblock');
|
|
23977
23974
|
this.loading = false;
|
|
23978
|
-
}, err => this.loading = false)
|
|
23975
|
+
}, (err) => (this.loading = false))
|
|
23976
|
+
]);
|
|
23979
23977
|
}
|
|
23980
23978
|
blockPermissionInheritance() {
|
|
23981
23979
|
this.blockOrUnblock = true;
|
|
23982
|
-
this.subscriptions$.concat([
|
|
23980
|
+
this.subscriptions$.concat([
|
|
23981
|
+
this.permissionService
|
|
23982
|
+
.blockPermissionInheritance(this.documentId)
|
|
23983
|
+
.subscribe((res) => {
|
|
23983
23984
|
if (res) {
|
|
23984
23985
|
this.getPermissions();
|
|
23985
|
-
this.tosterService.show('success', 'TOASTER.SUCCESS',
|
|
23986
|
+
this.tosterService.show('success', 'TOASTER.SUCCESS', 'TOASTER.PERMISSION_BLOCK_SUCCESS');
|
|
23986
23987
|
this.blockOrUnblock = false;
|
|
23987
|
-
this.status =
|
|
23988
|
+
this.status = 'unblock';
|
|
23988
23989
|
this.inheritedPermissions = [];
|
|
23989
23990
|
}
|
|
23990
|
-
}, err => {
|
|
23991
|
+
}, (err) => {
|
|
23991
23992
|
this.blockOrUnblock = false;
|
|
23992
23993
|
this.tosterService.show('error', 'TOASTER.ERROR', 'TOASTER.PERMISSION_BLOCK_FAIL');
|
|
23993
|
-
})
|
|
23994
|
+
})
|
|
23995
|
+
]);
|
|
23994
23996
|
}
|
|
23995
23997
|
unblockPermissionInheritance() {
|
|
23996
23998
|
this.blockOrUnblock = true;
|
|
23997
|
-
this.subscriptions$.concat([
|
|
23999
|
+
this.subscriptions$.concat([
|
|
24000
|
+
this.permissionService
|
|
24001
|
+
.unblockPermissionInheritance(this.documentId)
|
|
24002
|
+
.subscribe((res) => {
|
|
23998
24003
|
if (res) {
|
|
23999
24004
|
this.getPermissions();
|
|
24000
|
-
this.tosterService.show('success', 'TOASTER.SUCCESS',
|
|
24001
|
-
this.status =
|
|
24005
|
+
this.tosterService.show('success', 'TOASTER.SUCCESS', 'TOASTER.PERMISSION_UNBLOCK_SUCCESS');
|
|
24006
|
+
this.status = 'block';
|
|
24002
24007
|
this.blockOrUnblock = false;
|
|
24003
24008
|
}
|
|
24004
|
-
}, err => {
|
|
24009
|
+
}, (err) => {
|
|
24005
24010
|
this.blockOrUnblock = false;
|
|
24006
24011
|
this.tosterService.show('error', 'TOASTER.ERROR', 'TOASTER.PERMISSION_UNBLOCK_FAIL');
|
|
24007
|
-
})
|
|
24012
|
+
})
|
|
24013
|
+
]);
|
|
24008
24014
|
}
|
|
24009
24015
|
addNewLocalPermissions() {
|
|
24010
24016
|
this.permissionService.departmentUsers = [...this.allDepartmentUsers];
|
|
24011
|
-
this.localPermissions.forEach(perm => {
|
|
24017
|
+
this.localPermissions.forEach((perm) => {
|
|
24012
24018
|
this.permissionService.departmentUsers.forEach((user, index) => {
|
|
24013
|
-
if (perm.username.properties.username === user.properties.username
|
|
24014
|
-
|
|
24019
|
+
if (perm.username.properties.username === user.properties.username &&
|
|
24020
|
+
perm.creator.properties.username ===
|
|
24021
|
+
this.nuxeoService.nuxeoClient.user.properties.username) {
|
|
24015
24022
|
this.permissionService.departmentUsers.splice(index, 1);
|
|
24016
24023
|
}
|
|
24017
24024
|
});
|
|
24018
24025
|
});
|
|
24019
|
-
const dialogConfig = new MatDialogConfig();
|
|
24020
|
-
dialogConfig.disableClose = false;
|
|
24021
|
-
dialogConfig.autoFocus = true;
|
|
24022
|
-
dialogConfig.data = {
|
|
24023
|
-
id: this.documentId,
|
|
24024
|
-
rights: this.userVisiblePermissions
|
|
24025
|
-
};
|
|
24026
|
-
dialogConfig.width = '35%';
|
|
24027
|
-
dialogConfig.height = '70%';
|
|
24028
24026
|
// befor opening modal we diable clickout side effect to prevent details side menu from closing when clicking in the modal
|
|
24029
24027
|
this.permissionService.disableClickOutSide = true;
|
|
24030
|
-
|
|
24031
|
-
|
|
24028
|
+
this.nuxeoDialogService
|
|
24029
|
+
.open({
|
|
24030
|
+
component: AddPermissionsDialogComponent,
|
|
24031
|
+
width: '35%',
|
|
24032
|
+
height: '70%',
|
|
24033
|
+
panelClass: 'watcher-dialog-container',
|
|
24034
|
+
data: {
|
|
24035
|
+
id: this.documentId,
|
|
24036
|
+
rights: this.userVisiblePermissions
|
|
24037
|
+
}
|
|
24038
|
+
//disableClose: true,
|
|
24039
|
+
})
|
|
24040
|
+
.afterClosed()
|
|
24041
|
+
.subscribe((res) => {
|
|
24032
24042
|
// return click outside effect to work to close side menu when clicking out side it
|
|
24033
24043
|
this.permissionService.disableClickOutSide = false;
|
|
24034
24044
|
if (res) {
|
|
@@ -24037,9 +24047,15 @@ class PermissionsComponent {
|
|
|
24037
24047
|
});
|
|
24038
24048
|
}
|
|
24039
24049
|
checkIfUserCanDoActionsOnPermissions() {
|
|
24040
|
-
this.evaluatorService
|
|
24050
|
+
this.evaluatorService
|
|
24051
|
+
.evaluateRule('isManagePermissionEnabled')
|
|
24052
|
+
.then((isEnabled) => {
|
|
24041
24053
|
if (isEnabled) {
|
|
24042
|
-
this.evaluatorService
|
|
24054
|
+
this.evaluatorService
|
|
24055
|
+
.evaluateRule('isDepartmentDocumentController', {
|
|
24056
|
+
entity: this.document
|
|
24057
|
+
})
|
|
24058
|
+
.then((userInControllerGroup) => {
|
|
24043
24059
|
// let userInControllerGroup = false;
|
|
24044
24060
|
// this.nuxeoService.nuxeoClient.user.userGroups.forEach(group => {
|
|
24045
24061
|
// if (group.name === 'dms_document_controller') {
|
|
@@ -24048,15 +24064,25 @@ class PermissionsComponent {
|
|
|
24048
24064
|
// });
|
|
24049
24065
|
if (userInControllerGroup) {
|
|
24050
24066
|
let depCode = this.userServ.getUserDepartmentFromPath(this.document.path);
|
|
24051
|
-
this.permissionService
|
|
24052
|
-
|
|
24053
|
-
|
|
24067
|
+
this.permissionService
|
|
24068
|
+
.getDepMembers(depCode)
|
|
24069
|
+
.subscribe((res) => {
|
|
24070
|
+
this.permissionService.departmentUsers = res.users.map((e) => {
|
|
24071
|
+
e['displayLabel'] =
|
|
24072
|
+
e.properties.firstName + ' ' + e.properties.lastName;
|
|
24054
24073
|
return e;
|
|
24055
24074
|
});
|
|
24056
|
-
this.allDepartmentUsers = [
|
|
24057
|
-
|
|
24058
|
-
|
|
24059
|
-
|
|
24075
|
+
this.allDepartmentUsers = [
|
|
24076
|
+
...this.permissionService.departmentUsers
|
|
24077
|
+
];
|
|
24078
|
+
res.users.forEach((user) => {
|
|
24079
|
+
if (user.properties.username ===
|
|
24080
|
+
this.nuxeoService.nuxeoClient.user.properties
|
|
24081
|
+
.username &&
|
|
24082
|
+
((this.document.type === 'DmsFolder' &&
|
|
24083
|
+
this.document.path.includes('/default-domain/workspaces/DMS/')) ||
|
|
24084
|
+
(this.document.type === 'Folder' &&
|
|
24085
|
+
this.document.path.includes('/default-domain/workspaces/DMSWorkspaces/')))) {
|
|
24060
24086
|
this.allowAdd_Block_DeletePermission = true;
|
|
24061
24087
|
}
|
|
24062
24088
|
});
|
|
@@ -24075,11 +24101,11 @@ class PermissionsComponent {
|
|
|
24075
24101
|
ngOnDestroy() {
|
|
24076
24102
|
// return click outside effect to work to close side menu when clicking out side it
|
|
24077
24103
|
this.permissionService.disableClickOutSide = false;
|
|
24078
|
-
this.subscriptions$.forEach(e => e.unsubscribe());
|
|
24104
|
+
this.subscriptions$.forEach((e) => e.unsubscribe());
|
|
24079
24105
|
}
|
|
24080
24106
|
}
|
|
24081
|
-
PermissionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PermissionsComponent, deps: [{ token: PermissionService }, { token: i1$3.MatDialog }, { token: CustomToastrService }, { token: TranslationService }, { token: NuxeoService }, { token: UserService }, { token: EvaluatorsService }], target: i0.ɵɵFactoryTarget.Component });
|
|
24082
|
-
PermissionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PermissionsComponent, selector: "app-permissions", inputs: { documentId: "documentId", document: "document", allowAddAndBlock: "allowAddAndBlock", sourcePage: "sourcePage" }, ngImport: i0, template: "<div class=\"h-auto mt-3 px-0 pb-4\" *ngIf=\"!loading; else loader\">\r\n <!--LocalPermission List Items-->\r\n <div *ngIf=\"sourcePage != 'myFiles'\">\r\n <div class=\"flex flex-row justify-between\">\r\n <span class=\"font-bold text-gray-500 text-base\">{{\r\n \"permission.local\" | translate\r\n }}</span>\r\n <span *ngIf=\"allowAdd_Block_DeletePermission && !inheritedPermissions.length\">\r\n <button\r\n *ngIf=\"allowAddAndBlock\"\r\n class=\"hover:text-blue-700 text-blue-500 mb-1 text-base\"\r\n (click)=\"addNewLocalPermissions()\"\r\n [disabled]=\"!permissionsType\"\r\n >\r\n {{ \"permission.new\" | translate }}\r\n </button>\r\n </span>\r\n </div>\r\n <mat-divider class=\"mat-divider\"></mat-divider>\r\n <app-permissions-template\r\n [documentId]=\"documentId\"\r\n [userVisiblePermissions]=\"userVisiblePermissions\"\r\n (getPermissions)=\"getPermissions()\"\r\n [allowDeleteAndEdit]=\"allowAdd_Block_DeletePermission\"\r\n [permissionsArray]=\"localPermissions\"\r\n *ngIf=\"localPermissions.length > 0; else nolocalPermissions\"\r\n >\r\n </app-permissions-template>\r\n </div>\r\n <ng-template #nolocalPermissions>\r\n <div class=\"single-permssion p-3 text-center\">\r\n {{ \"permission.noLocal\" | translate }}\r\n </div>\r\n </ng-template>\r\n <!--InheritedPermission List Items-->\r\n <div>\r\n <div class=\"flex flex-row justify-between mt-3\">\r\n <span class=\"font-bold text-gray-500 text-base\">{{\r\n \"permission.inherited\" | translate\r\n }}</span>\r\n <span *ngIf=\"allowAdd_Block_DeletePermission\">\r\n <button\r\n class=\"hover:text-blue-700 text-blue-500 mb-1 text-base\"\r\n *ngIf=\"status != null && allowAddAndBlock\"\r\n >\r\n <span\r\n *ngIf=\"status == 'block'; else unblock\"\r\n (click)=\"unblockPermissionInheritance()\"\r\n >\r\n {{ \"permission.unblock\" | translate }}\r\n </span>\r\n <ng-template #unblock>\r\n <span (click)=\"blockPermissionInheritance()\">\r\n {{ \"permission.block\" | translate }}\r\n </span>\r\n </ng-template>\r\n </button>\r\n </span>\r\n </div>\r\n <mat-divider class=\"mat-divider\" *ngIf=\"!blockOrUnblock\"></mat-divider>\r\n <mat-progress-bar mode=\"indeterminate\" *ngIf=\"blockOrUnblock\"></mat-progress-bar>\r\n <app-permissions-template\r\n *ngIf=\"inheritedPermissions.length > 0; else noinheritedPermissions\"\r\n [documentId]=\"documentId\"\r\n [userVisiblePermissions]=\"userVisiblePermissions\"\r\n [permissionsArray]=\"inheritedPermissions\"\r\n (getPermissions)=\"getPermissions()\"\r\n >\r\n </app-permissions-template>\r\n </div>\r\n <ng-template #noinheritedPermissions>\r\n <div class=\"single-permssion p-3 text-center\">\r\n {{\"permission.noInherited\" | translate }}</div>\r\n </ng-template>\r\n <!--departmentPermissions List Items-->\r\n <div *ngIf=\"departmentPermissions.length > 0\">\r\n <div class=\"flex flex-row justify-between\">\r\n <span class=\"font-bold text-gray-500 text-base\">{{\r\n \"permission.departmentPermissions\" | translate\r\n }}</span>\r\n </div>\r\n <mat-divider class=\"mat-divider\"></mat-divider>\r\n <app-permissions-template\r\n [documentId]=\"documentId\"\r\n [userVisiblePermissions]=\"userVisiblePermissions\"\r\n (getPermissions)=\"getPermissions()\"\r\n [permissionsArray]=\"departmentPermissions\"\r\n >\r\n </app-permissions-template>\r\n </div>\r\n <!--sharePermissions List Items-->\r\n <div *ngIf=\"sharePermissions.length > 0\">\r\n <div class=\"flex flex-row justify-between\">\r\n <span class=\"font-bold text-gray-500 text-base\">{{\r\n \"permission.sharePermissions\" | translate\r\n }}</span>\r\n </div>\r\n <mat-divider class=\"mat-divider\"></mat-divider>\r\n <app-permissions-template\r\n [documentId]=\"documentId\"\r\n [userVisiblePermissions]=\"userVisiblePermissions\"\r\n (getPermissions)=\"getPermissions()\"\r\n [permissionsArray]=\"sharePermissions\"\r\n >\r\n </app-permissions-template>\r\n </div>\r\n <!--workflowPermissions List Items-->\r\n <div *ngIf=\"workflowPermissions.length > 0\">\r\n <div class=\"flex flex-row justify-between\">\r\n <span class=\"font-bold text-gray-500 text-base\">{{\r\n \"permission.workflowPermissions\" | translate\r\n }}</span>\r\n </div>\r\n <mat-divider class=\"mat-divider\"></mat-divider>\r\n <app-permissions-template\r\n [documentId]=\"documentId\"\r\n [userVisiblePermissions]=\"userVisiblePermissions\"\r\n (getPermissions)=\"getPermissions()\"\r\n [permissionsArray]=\"workflowPermissions\"\r\n >\r\n </app-permissions-template>\r\n </div>\r\n</div>\r\n\r\n<ng-template #loader>\r\n <div class=\"flex items-center justify-center w-full h-full\">\r\n <mat-spinner [value]=\"90\" [strokeWidth]=\"6\" overlay=\"true\" [diameter]=\"75\"></mat-spinner>\r\n </div>\r\n</ng-template>\r\n", styles: [""], components: [{ type:
|
|
24107
|
+
PermissionsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PermissionsComponent, deps: [{ token: PermissionService }, { token: i1$3.MatDialog }, { token: CustomToastrService }, { token: TranslationService }, { token: NuxeoService }, { token: UserService }, { token: EvaluatorsService }, { token: NuxeoDialogService }], target: i0.ɵɵFactoryTarget.Component });
|
|
24108
|
+
PermissionsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: PermissionsComponent, selector: "app-permissions", inputs: { documentId: "documentId", document: "document", allowAddAndBlock: "allowAddAndBlock", sourcePage: "sourcePage" }, ngImport: i0, template: "<div class=\"h-auto mt-3 px-0 pb-4\" *ngIf=\"!loading; else loader\">\r\n <!--LocalPermission List Items-->\r\n <div *ngIf=\"sourcePage != 'myFiles'\">\r\n <div class=\"flex flex-row justify-between\">\r\n <span class=\"font-bold text-gray-500 text-base\">{{\r\n \"permission.local\" | translate\r\n }}</span>\r\n <span *ngIf=\"allowAdd_Block_DeletePermission && !inheritedPermissions.length\">\r\n <button\r\n *ngIf=\"allowAddAndBlock\"\r\n class=\"hover:text-blue-700 text-blue-500 mb-1 text-base\"\r\n (click)=\"addNewLocalPermissions()\"\r\n [disabled]=\"!permissionsType\"\r\n >\r\n {{ \"permission.new\" | translate }}\r\n </button>\r\n </span>\r\n </div>\r\n <mat-divider class=\"mat-divider\"></mat-divider>\r\n <app-permissions-template\r\n [documentId]=\"documentId\"\r\n [userVisiblePermissions]=\"userVisiblePermissions\"\r\n (getPermissions)=\"getPermissions()\"\r\n [allowDeleteAndEdit]=\"allowAdd_Block_DeletePermission\"\r\n [permissionsArray]=\"localPermissions\"\r\n *ngIf=\"localPermissions.length > 0; else nolocalPermissions\"\r\n >\r\n </app-permissions-template>\r\n </div>\r\n <ng-template #nolocalPermissions>\r\n <div class=\"single-permssion p-3 text-center\">\r\n {{ \"permission.noLocal\" | translate }}\r\n </div>\r\n </ng-template>\r\n <!--InheritedPermission List Items-->\r\n <div>\r\n <div class=\"flex flex-row justify-between mt-3\">\r\n <span class=\"font-bold text-gray-500 text-base\">{{\r\n \"permission.inherited\" | translate\r\n }}</span>\r\n <span *ngIf=\"allowAdd_Block_DeletePermission\">\r\n <button\r\n class=\"hover:text-blue-700 text-blue-500 mb-1 text-base\"\r\n *ngIf=\"status != null && allowAddAndBlock\"\r\n >\r\n <span\r\n *ngIf=\"status == 'block'; else unblock\"\r\n (click)=\"unblockPermissionInheritance()\"\r\n >\r\n {{ \"permission.unblock\" | translate }}\r\n </span>\r\n <ng-template #unblock>\r\n <span (click)=\"blockPermissionInheritance()\">\r\n {{ \"permission.block\" | translate }}\r\n </span>\r\n </ng-template>\r\n </button>\r\n </span>\r\n </div>\r\n <mat-divider class=\"mat-divider\" *ngIf=\"!blockOrUnblock\"></mat-divider>\r\n <mat-progress-bar mode=\"indeterminate\" *ngIf=\"blockOrUnblock\"></mat-progress-bar>\r\n <app-permissions-template\r\n *ngIf=\"inheritedPermissions.length > 0; else noinheritedPermissions\"\r\n [documentId]=\"documentId\"\r\n [userVisiblePermissions]=\"userVisiblePermissions\"\r\n [permissionsArray]=\"inheritedPermissions\"\r\n (getPermissions)=\"getPermissions()\"\r\n >\r\n </app-permissions-template>\r\n </div>\r\n <ng-template #noinheritedPermissions>\r\n <div class=\"single-permssion p-3 text-center\">\r\n {{\"permission.noInherited\" | translate }}</div>\r\n </ng-template>\r\n <!--departmentPermissions List Items-->\r\n <div *ngIf=\"departmentPermissions.length > 0\">\r\n <div class=\"flex flex-row justify-between\">\r\n <span class=\"font-bold text-gray-500 text-base\">{{\r\n \"permission.departmentPermissions\" | translate\r\n }}</span>\r\n </div>\r\n <mat-divider class=\"mat-divider\"></mat-divider>\r\n <app-permissions-template\r\n [documentId]=\"documentId\"\r\n [userVisiblePermissions]=\"userVisiblePermissions\"\r\n (getPermissions)=\"getPermissions()\"\r\n [permissionsArray]=\"departmentPermissions\"\r\n >\r\n </app-permissions-template>\r\n </div>\r\n <!--sharePermissions List Items-->\r\n <div *ngIf=\"sharePermissions.length > 0\">\r\n <div class=\"flex flex-row justify-between\">\r\n <span class=\"font-bold text-gray-500 text-base\">{{\r\n \"permission.sharePermissions\" | translate\r\n }}</span>\r\n </div>\r\n <mat-divider class=\"mat-divider\"></mat-divider>\r\n <app-permissions-template\r\n [documentId]=\"documentId\"\r\n [userVisiblePermissions]=\"userVisiblePermissions\"\r\n (getPermissions)=\"getPermissions()\"\r\n [permissionsArray]=\"sharePermissions\"\r\n >\r\n </app-permissions-template>\r\n </div>\r\n <!--workflowPermissions List Items-->\r\n <div *ngIf=\"workflowPermissions.length > 0\">\r\n <div class=\"flex flex-row justify-between\">\r\n <span class=\"font-bold text-gray-500 text-base\">{{\r\n \"permission.workflowPermissions\" | translate\r\n }}</span>\r\n </div>\r\n <mat-divider class=\"mat-divider\"></mat-divider>\r\n <app-permissions-template\r\n [documentId]=\"documentId\"\r\n [userVisiblePermissions]=\"userVisiblePermissions\"\r\n (getPermissions)=\"getPermissions()\"\r\n [permissionsArray]=\"workflowPermissions\"\r\n >\r\n </app-permissions-template>\r\n </div>\r\n</div>\r\n\r\n<ng-template #loader>\r\n <div class=\"flex items-center justify-center w-full h-full\">\r\n <mat-spinner [value]=\"90\" [strokeWidth]=\"6\" overlay=\"true\" [diameter]=\"75\"></mat-spinner>\r\n </div>\r\n</ng-template>\r\n", styles: [""], components: [{ type: i9$1.MatDivider, selector: "mat-divider", inputs: ["vertical", "inset"] }, { type: PermissionsTemplateComponent, selector: "app-permissions-template", inputs: ["allowDeleteAndEdit", "documentId", "userVisiblePermissions", "permissionsArray"], outputs: ["getPermissions"] }, { type: i4$3.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "mode", "value", "bufferValue"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i1$5.MatSpinner, selector: "mat-spinner", inputs: ["color"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i1.TranslatePipe } });
|
|
24083
24109
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: PermissionsComponent, decorators: [{
|
|
24084
24110
|
type: Component,
|
|
24085
24111
|
args: [{
|
|
@@ -24087,7 +24113,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
24087
24113
|
templateUrl: './permissions.component.html',
|
|
24088
24114
|
styleUrls: ['./permissions.component.scss']
|
|
24089
24115
|
}]
|
|
24090
|
-
}], ctorParameters: function () { return [{ type: PermissionService }, { type: i1$3.MatDialog }, { type: CustomToastrService }, { type: TranslationService }, { type: NuxeoService }, { type: UserService }, { type: EvaluatorsService }]; }, propDecorators: { documentId: [{
|
|
24116
|
+
}], ctorParameters: function () { return [{ type: PermissionService }, { type: i1$3.MatDialog }, { type: CustomToastrService }, { type: TranslationService }, { type: NuxeoService }, { type: UserService }, { type: EvaluatorsService }, { type: NuxeoDialogService }]; }, propDecorators: { documentId: [{
|
|
24091
24117
|
type: Input
|
|
24092
24118
|
}], document: [{
|
|
24093
24119
|
type: Input
|
|
@@ -24613,8 +24639,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImpo
|
|
|
24613
24639
|
var _FileManagerAbstract_instances, _FileManagerAbstract_foldersSubscription$, _FileManagerAbstract_loadMore, _FileManagerAbstract_resetPagination, _FileManagerAbstract_initPagination, _FileManagerAbstract_getNode, _FileManagerAbstract_addOrReplace;
|
|
24614
24640
|
//
|
|
24615
24641
|
class FileManagerAbstract {
|
|
24616
|
-
constructor(injectorObj, myPageConfigurationName, environment) {
|
|
24642
|
+
constructor(injectorObj, myPageConfigurationName, environment, nuxeoDialogService) {
|
|
24617
24643
|
this.injectorObj = injectorObj;
|
|
24644
|
+
this.nuxeoDialogService = nuxeoDialogService;
|
|
24618
24645
|
_FileManagerAbstract_instances.add(this);
|
|
24619
24646
|
_FileManagerAbstract_foldersSubscription$.set(this, void 0);
|
|
24620
24647
|
this.subscriptions = [];
|
|
@@ -24831,10 +24858,10 @@ class FileManagerAbstract {
|
|
|
24831
24858
|
item.type == 'Folder' ? (myType = 'Folder') : null;
|
|
24832
24859
|
});
|
|
24833
24860
|
}
|
|
24834
|
-
this.
|
|
24861
|
+
this.nuxeoDialogService.open({
|
|
24862
|
+
component: PublishDialogComponent,
|
|
24835
24863
|
width: '500px',
|
|
24836
24864
|
height: '400px',
|
|
24837
|
-
maxWidth: 'auto',
|
|
24838
24865
|
panelClass: 'watcher-dialog-container',
|
|
24839
24866
|
data: {
|
|
24840
24867
|
id: this.multipleItems.length > 1
|
|
@@ -24845,8 +24872,7 @@ class FileManagerAbstract {
|
|
|
24845
24872
|
: this.selectedItem.isDirectory
|
|
24846
24873
|
? 'Folder'
|
|
24847
24874
|
: 'File'
|
|
24848
|
-
}
|
|
24849
|
-
disableClose: true
|
|
24875
|
+
}
|
|
24850
24876
|
});
|
|
24851
24877
|
};
|
|
24852
24878
|
this.addToClipboard = () => {
|
|
@@ -25227,10 +25253,10 @@ class FileManagerAbstract {
|
|
|
25227
25253
|
}));
|
|
25228
25254
|
}
|
|
25229
25255
|
openUpdateModal() {
|
|
25230
|
-
this.
|
|
25256
|
+
this.nuxeoDialogService.open({
|
|
25257
|
+
component: UpdateModalComponent,
|
|
25231
25258
|
width: '40%',
|
|
25232
25259
|
height: '70%',
|
|
25233
|
-
maxWidth: 'auto',
|
|
25234
25260
|
panelClass: 'watcher-dialog-container',
|
|
25235
25261
|
data: {
|
|
25236
25262
|
id: this.selectedItem.id,
|
|
@@ -25239,8 +25265,7 @@ class FileManagerAbstract {
|
|
|
25239
25265
|
? this.selectedItem.entity.properties['gdoc:documentTypeCode']
|
|
25240
25266
|
: this.selectedItem.entity.type,
|
|
25241
25267
|
isDirectory: this.selectedItem.isDirectory
|
|
25242
|
-
}
|
|
25243
|
-
disableClose: true
|
|
25268
|
+
}
|
|
25244
25269
|
});
|
|
25245
25270
|
}
|
|
25246
25271
|
getSelectedItem(directory) {
|
|
@@ -25499,15 +25524,15 @@ class FileManagerAbstract {
|
|
|
25499
25524
|
// --------------------------------------- create new file popups ---------------------------------------------------------------------
|
|
25500
25525
|
checkForOpeningCreationDialog(fileType) {
|
|
25501
25526
|
if (this.dialogMangmentService.minizedModal) {
|
|
25502
|
-
let dialogRef = this.
|
|
25527
|
+
let dialogRef = this.nuxeoDialogService.open({
|
|
25528
|
+
component: ConfirmationDialogComponent,
|
|
25503
25529
|
width: '510px',
|
|
25504
25530
|
data: {
|
|
25505
25531
|
title: 'createFileInProgressTitle',
|
|
25506
25532
|
message: 'createFileInProgress',
|
|
25507
25533
|
confirmButton: `BUTTONS.Yes`,
|
|
25508
25534
|
cancelButton: 'BUTTONS.No'
|
|
25509
|
-
}
|
|
25510
|
-
disableClose: true
|
|
25535
|
+
}
|
|
25511
25536
|
});
|
|
25512
25537
|
dialogRef.afterClosed().subscribe((res) => {
|
|
25513
25538
|
if (res) {
|
|
@@ -25546,12 +25571,14 @@ class FileManagerAbstract {
|
|
|
25546
25571
|
}
|
|
25547
25572
|
}
|
|
25548
25573
|
openCreationTypeDialog(fileType) {
|
|
25549
|
-
let creationDialogRef = this.
|
|
25574
|
+
let creationDialogRef = this.nuxeoDialogService.open({
|
|
25575
|
+
component: CreationTypeComponent,
|
|
25550
25576
|
width: '500px',
|
|
25551
25577
|
height: '300px',
|
|
25552
25578
|
panelClass: 'watcher-dialog-container',
|
|
25553
|
-
data: {}
|
|
25554
|
-
|
|
25579
|
+
data: {}
|
|
25580
|
+
//TODO
|
|
25581
|
+
//disableClose: true
|
|
25555
25582
|
});
|
|
25556
25583
|
creationDialogRef.afterClosed().subscribe((res) => {
|
|
25557
25584
|
// if there was a minimied scan modal and he want to open another modal then reset for saved scanned modal
|
|
@@ -25578,15 +25605,15 @@ class FileManagerAbstract {
|
|
|
25578
25605
|
}
|
|
25579
25606
|
checkForCreateNewFolder(folderType) {
|
|
25580
25607
|
if (this.dialogMangmentService.minizedModal) {
|
|
25581
|
-
let dialogRef = this.
|
|
25608
|
+
let dialogRef = this.nuxeoDialogService.open({
|
|
25609
|
+
component: ConfirmationDialogComponent,
|
|
25582
25610
|
width: '510px',
|
|
25583
25611
|
data: {
|
|
25584
25612
|
title: 'createFileInProgressTitle',
|
|
25585
25613
|
message: 'createFileInProgress',
|
|
25586
25614
|
confirmButton: `BUTTONS.Yes`,
|
|
25587
25615
|
cancelButton: 'BUTTONS.No'
|
|
25588
|
-
}
|
|
25589
|
-
disableClose: true
|
|
25616
|
+
}
|
|
25590
25617
|
});
|
|
25591
25618
|
dialogRef.afterClosed().subscribe((res) => {
|
|
25592
25619
|
if (res) {
|
|
@@ -25624,13 +25651,13 @@ class FileManagerAbstract {
|
|
|
25624
25651
|
});
|
|
25625
25652
|
}
|
|
25626
25653
|
openCreateFolderDialog(folderType, dynamicform) {
|
|
25627
|
-
this.
|
|
25654
|
+
this.nuxeoDialogService.open({
|
|
25655
|
+
component: FolderModalComponent,
|
|
25628
25656
|
width: '40%',
|
|
25629
25657
|
height: '70%',
|
|
25630
|
-
maxWidth: 'auto',
|
|
25631
25658
|
panelClass: 'watcher-dialog-container',
|
|
25632
|
-
data: { folderType: folderType, dynamicForm: dynamicform }
|
|
25633
|
-
disableClose: true
|
|
25659
|
+
data: { folderType: folderType, dynamicForm: dynamicform }
|
|
25660
|
+
//disableClose: true,
|
|
25634
25661
|
});
|
|
25635
25662
|
}
|
|
25636
25663
|
//--------------------------------- may be unused funtions -------------------
|
|
@@ -25754,14 +25781,14 @@ _FileManagerAbstract_foldersSubscription$ = new WeakMap(), _FileManagerAbstract_
|
|
|
25754
25781
|
});
|
|
25755
25782
|
return values(itemMap);
|
|
25756
25783
|
};
|
|
25757
|
-
FileManagerAbstract.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FileManagerAbstract, deps: [{ token: i0.Injector }, { token: String }, { token: Object }], target: i0.ɵɵFactoryTarget.Component });
|
|
25784
|
+
FileManagerAbstract.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FileManagerAbstract, deps: [{ token: i0.Injector }, { token: String }, { token: Object }, { token: NuxeoDialogService }], target: i0.ɵɵFactoryTarget.Component });
|
|
25758
25785
|
FileManagerAbstract.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: FileManagerAbstract, selector: "ng-component", host: { listeners: { "document:click": "clickout($event)" } }, viewQueries: [{ propertyName: "fileManager", first: true, predicate: DxFileManagerComponent, descendants: true }, { propertyName: "form", first: true, predicate: DxFormComponent, descendants: true }, { propertyName: "treeView", first: true, predicate: DxTreeViewComponent, descendants: true }], ngImport: i0, template: '', isInline: true });
|
|
25759
25786
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: FileManagerAbstract, decorators: [{
|
|
25760
25787
|
type: Component,
|
|
25761
25788
|
args: [{
|
|
25762
25789
|
template: ''
|
|
25763
25790
|
}]
|
|
25764
|
-
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: String }, { type: Object }]; }, propDecorators: { fileManager: [{
|
|
25791
|
+
}], ctorParameters: function () { return [{ type: i0.Injector }, { type: String }, { type: Object }, { type: NuxeoDialogService }]; }, propDecorators: { fileManager: [{
|
|
25765
25792
|
type: ViewChild,
|
|
25766
25793
|
args: [DxFileManagerComponent, { static: false }]
|
|
25767
25794
|
}], form: [{
|
|
@@ -31421,7 +31448,7 @@ class NotificationsButtonComponent extends BaseNotification {
|
|
|
31421
31448
|
}
|
|
31422
31449
|
}
|
|
31423
31450
|
NotificationsButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NotificationsButtonComponent, deps: [{ token: i0.Injector }, { token: TranslationService }, { token: CustomToastrService }, { token: i0.ChangeDetectorRef }, { token: NOTIFICATIONS_LIST_OPTIONS, optional: true }], target: i0.ɵɵFactoryTarget.Component });
|
|
31424
|
-
NotificationsButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NotificationsButtonComponent, selector: "app-notifications-button", inputs: { styleClass: "styleClass", badgeOptions: "badgeOptions" }, outputs: { listItemClick: "listItemClick", openSettings: "openSettings", openNotifications: "openNotifications", onNotification: "onNotification" }, host: { classAttribute: "inline-flex justify-center items-center notification-button" }, queries: [{ propertyName: "customIconTemplate", first: true, predicate: NOTIFICATION_ICON, descendants: true, read: TemplateRef, static: true }], usesInheritance: true, ngImport: i0, template: "<button\r\n *ngIf=\"panelMode === panelModeEnum.panel\"\r\n [matMenuTriggerFor]=\"notifications\"\r\n [matBadge]=\"newNotificationCount$ | async\"\r\n [matBadgeHidden]=\"!(showBadge$ | async)\"\r\n [matBadgeSize]=\"badgeOptions.size\"\r\n [matBadgeColor]=\"badgeOptions.color\"\r\n [matBadgePosition]=\"badgeOptions.position\"\r\n [class]=\"styleClass\"\r\n (menuOpened)=\"markAllAsUnread()\"\r\n>\r\n <ng-container [ngTemplateOutlet]=\"customIconTemplate || defaultIconTemplate\">\r\n </ng-container>\r\n</button>\r\n\r\n<mat-menu #notifications=\"matMenu\" class=\"notification-list-panel\">\r\n <ng-template matMenuContent>\r\n <app-notifications-list\r\n (itemClicked)=\"listItemClick.emit($event); notifications.closed.emit()\"\r\n (openSettings)=\"openSettings.emit($event); notifications.closed.emit()\"\r\n (openNotifications)=\"openNotifications.emit($event); notifications.closed.emit()\"\r\n (markAllRead)=\"refreshUnreadCount()\"\r\n ></app-notifications-list>\r\n </ng-template>\r\n <div class=\"notification-list-panel__footer flex justify-center\">\r\n <ng-content select=\"[notifications-footer]\"></ng-content>\r\n </div>\r\n</mat-menu>\r\n\r\n<ng-container *ngIf=\"panelMode === panelModeEnum.sidebar\">\r\n <button\r\n [matBadge]=\"newNotificationCount$ | async\"\r\n [matBadgeHidden]=\"!(showBadge$ | async)\"\r\n [matBadgeSize]=\"badgeOptions.size\"\r\n [matBadgeColor]=\"badgeOptions.color\"\r\n [matBadgePosition]=\"badgeOptions.position\"\r\n [class]=\"styleClass\"\r\n (click)=\"toggleSideBar(); markAllAsUnread()\"\r\n >\r\n <ng-container [ngTemplateOutlet]=\"customIconTemplate || defaultIconTemplate\">\r\n </ng-container>\r\n </button>\r\n <app-notifications-sidebar\r\n [(visible)]=\"isSidebarOpened\"\r\n (visibleChange)=\"refreshUnreadCount()\"\r\n [position]=\"sidebarPosition$ | async\"\r\n >\r\n <ng-template appNotificationSidebarContent>\r\n <app-notifications-list\r\n class=\"notifications-sidebar\"\r\n (itemClicked)=\"\r\n listItemClick.emit($event); toggleSideBar(false); refreshUnreadCount()\r\n \"\r\n (openSettings)=\"openSettings.emit($event); toggleSideBar(false)\"\r\n (openNotifications)=\"openNotifications.emit($event); toggleSideBar(false)\"\r\n (markAllRead)=\"refreshUnreadCount()\"\r\n ></app-notifications-list>\r\n </ng-template>\r\n </app-notifications-sidebar>\r\n</ng-container>\r\n\r\n<ng-template #defaultIconTemplate>\r\n <i class=\"bi bi-bell bell\"></i>\r\n</ng-template>\r\n", styles: [".notification-button{font-size:var(--not-btn-font-size, 1.5rem);width:var(--not-btn-width, 40px)}.notification-list-panel{--width: var(--nos-panel-width, min(80vw, 450px));width:var(--width);border-radius:var(--nos-panel-radius, 5px);overflow:hidden;-webkit-overflow-scrolling:touch;outline:0;background:var(--nos-panel-background, #fff)}.notification-list-panel.mat-menu-panel{max-width:var(--width);max-height:var(--nos-panel-max-height, var(--height))}.notification-list-panel__navigate-btn{background:var(--not-btn-background, transparent);border-radius:var(--not-btn-radius, 5px);padding:var(--not-btn-padding, .5rem 1rem);margin:var(--not-btn-margin, .5rem 0);color:var(--not-btn-color, currentColor);width:var(--not-btn-width, 90%)}.notification-list-panel__navigate-btn:hover{--not-btn-background: var(--not-btn-hover-background, #f0f0f0);--not-btn-color: var(--not-btn-hover-color);-webkit-text-decoration:var(--not-btn-decoration, none);text-decoration:var(--not-btn-decoration, none)}.notification-list-panel__navigate-btn:active{--not-btn-background: var(--not-btn-active-background, #e2e2e2);--not-btn-color: var(--not-btn-active-color)}.notifications-sidebar{--nto-list-header-padding: var(--sidebar-list-header-padding , 1rem);--nto-list-height: var(--sidebar-list-height , calc(100vh - 100px))}\n"], components: [{ type: i3$1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: NotificationsListComponent, selector: "app-notifications-list", outputs: ["openSettings", "openNotifications"] }, { type: NotificationsSidebarComponent, selector: "app-notifications-sidebar", inputs: ["appendToBody", "clearOnCLose", "visible", "position"], outputs: ["visibleChange", "onShow", "onHide"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["matMenuTriggerRestoreFocus", "mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { type: i7$
|
|
31451
|
+
NotificationsButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NotificationsButtonComponent, selector: "app-notifications-button", inputs: { styleClass: "styleClass", badgeOptions: "badgeOptions" }, outputs: { listItemClick: "listItemClick", openSettings: "openSettings", openNotifications: "openNotifications", onNotification: "onNotification" }, host: { classAttribute: "inline-flex justify-center items-center notification-button" }, queries: [{ propertyName: "customIconTemplate", first: true, predicate: NOTIFICATION_ICON, descendants: true, read: TemplateRef, static: true }], usesInheritance: true, ngImport: i0, template: "<button\r\n *ngIf=\"panelMode === panelModeEnum.panel\"\r\n [matMenuTriggerFor]=\"notifications\"\r\n [matBadge]=\"newNotificationCount$ | async\"\r\n [matBadgeHidden]=\"!(showBadge$ | async)\"\r\n [matBadgeSize]=\"badgeOptions.size\"\r\n [matBadgeColor]=\"badgeOptions.color\"\r\n [matBadgePosition]=\"badgeOptions.position\"\r\n [class]=\"styleClass\"\r\n (menuOpened)=\"markAllAsUnread()\"\r\n>\r\n <ng-container [ngTemplateOutlet]=\"customIconTemplate || defaultIconTemplate\">\r\n </ng-container>\r\n</button>\r\n\r\n<mat-menu #notifications=\"matMenu\" class=\"notification-list-panel\">\r\n <ng-template matMenuContent>\r\n <app-notifications-list\r\n (itemClicked)=\"listItemClick.emit($event); notifications.closed.emit()\"\r\n (openSettings)=\"openSettings.emit($event); notifications.closed.emit()\"\r\n (openNotifications)=\"openNotifications.emit($event); notifications.closed.emit()\"\r\n (markAllRead)=\"refreshUnreadCount()\"\r\n ></app-notifications-list>\r\n </ng-template>\r\n <div class=\"notification-list-panel__footer flex justify-center\">\r\n <ng-content select=\"[notifications-footer]\"></ng-content>\r\n </div>\r\n</mat-menu>\r\n\r\n<ng-container *ngIf=\"panelMode === panelModeEnum.sidebar\">\r\n <button\r\n [matBadge]=\"newNotificationCount$ | async\"\r\n [matBadgeHidden]=\"!(showBadge$ | async)\"\r\n [matBadgeSize]=\"badgeOptions.size\"\r\n [matBadgeColor]=\"badgeOptions.color\"\r\n [matBadgePosition]=\"badgeOptions.position\"\r\n [class]=\"styleClass\"\r\n (click)=\"toggleSideBar(); markAllAsUnread()\"\r\n >\r\n <ng-container [ngTemplateOutlet]=\"customIconTemplate || defaultIconTemplate\">\r\n </ng-container>\r\n </button>\r\n <app-notifications-sidebar\r\n [(visible)]=\"isSidebarOpened\"\r\n (visibleChange)=\"refreshUnreadCount()\"\r\n [position]=\"sidebarPosition$ | async\"\r\n >\r\n <ng-template appNotificationSidebarContent>\r\n <app-notifications-list\r\n class=\"notifications-sidebar\"\r\n (itemClicked)=\"\r\n listItemClick.emit($event); toggleSideBar(false); refreshUnreadCount()\r\n \"\r\n (openSettings)=\"openSettings.emit($event); toggleSideBar(false)\"\r\n (openNotifications)=\"openNotifications.emit($event); toggleSideBar(false)\"\r\n (markAllRead)=\"refreshUnreadCount()\"\r\n ></app-notifications-list>\r\n </ng-template>\r\n </app-notifications-sidebar>\r\n</ng-container>\r\n\r\n<ng-template #defaultIconTemplate>\r\n <i class=\"bi bi-bell bell\"></i>\r\n</ng-template>\r\n", styles: [".notification-button{font-size:var(--not-btn-font-size, 1.5rem);width:var(--not-btn-width, 40px)}.notification-list-panel{--width: var(--nos-panel-width, min(80vw, 450px));width:var(--width);border-radius:var(--nos-panel-radius, 5px);overflow:hidden;-webkit-overflow-scrolling:touch;outline:0;background:var(--nos-panel-background, #fff)}.notification-list-panel.mat-menu-panel{max-width:var(--width);max-height:var(--nos-panel-max-height, var(--height))}.notification-list-panel__navigate-btn{background:var(--not-btn-background, transparent);border-radius:var(--not-btn-radius, 5px);padding:var(--not-btn-padding, .5rem 1rem);margin:var(--not-btn-margin, .5rem 0);color:var(--not-btn-color, currentColor);width:var(--not-btn-width, 90%)}.notification-list-panel__navigate-btn:hover{--not-btn-background: var(--not-btn-hover-background, #f0f0f0);--not-btn-color: var(--not-btn-hover-color);-webkit-text-decoration:var(--not-btn-decoration, none);text-decoration:var(--not-btn-decoration, none)}.notification-list-panel__navigate-btn:active{--not-btn-background: var(--not-btn-active-background, #e2e2e2);--not-btn-color: var(--not-btn-active-color)}.notifications-sidebar{--nto-list-header-padding: var(--sidebar-list-header-padding , 1rem);--nto-list-height: var(--sidebar-list-height , calc(100vh - 100px))}\n"], components: [{ type: i3$1.MatMenu, selector: "mat-menu", exportAs: ["matMenu"] }, { type: NotificationsListComponent, selector: "app-notifications-list", outputs: ["openSettings", "openNotifications"] }, { type: NotificationsSidebarComponent, selector: "app-notifications-sidebar", inputs: ["appendToBody", "clearOnCLose", "visible", "position"], outputs: ["visibleChange", "onShow", "onHide"] }], directives: [{ type: i4$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i3$1.MatMenuTrigger, selector: "[mat-menu-trigger-for], [matMenuTriggerFor]", inputs: ["matMenuTriggerRestoreFocus", "mat-menu-trigger-for", "matMenuTriggerFor", "matMenuTriggerData"], outputs: ["menuOpened", "onMenuOpen", "menuClosed", "onMenuClose"], exportAs: ["matMenuTrigger"] }, { type: i7$4.MatBadge, selector: "[matBadge]", inputs: ["matBadgeDisabled", "matBadgePosition", "matBadgeSize", "matBadgeColor", "matBadgeOverlap", "matBadgeDescription", "matBadgeHidden", "matBadge"] }, { type: i4$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i3$1.MatMenuContent, selector: "ng-template[matMenuContent]" }, { type: NotificationSidebarContentDirective, selector: "[appNotificationSidebarContent]" }], pipes: { "async": i4$1.AsyncPipe }, changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
31425
31452
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0, type: NotificationsButtonComponent, decorators: [{
|
|
31426
31453
|
type: Component,
|
|
31427
31454
|
args: [{
|