nuxeo-development-framework 6.0.5 → 6.0.7

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.
Files changed (32) hide show
  1. package/bundles/nuxeo-development-framework.umd.js +756 -3
  2. package/bundles/nuxeo-development-framework.umd.js.map +1 -1
  3. package/esm2015/lib/components/dynamic-form/components/dynamic-form-select-users/dynamic-form-select-users.component.js +1 -3
  4. package/esm2015/lib/components/latest-activity/components/single-activity/single-activity.component.js +2 -2
  5. package/esm2015/lib/components/ndf-signatures/emdha/dialogs/auth/emdha-auth.dialog.js +116 -0
  6. package/esm2015/lib/components/ndf-signatures/emdha/dialogs/index.js +2 -0
  7. package/esm2015/lib/components/ndf-signatures/emdha/index.js +3 -0
  8. package/esm2015/lib/components/ndf-signatures/emdha/services/emdha.service.js +133 -0
  9. package/esm2015/lib/components/ndf-signatures/emdha/services/index.js +2 -0
  10. package/esm2015/lib/components/ndf-signatures/index.js +5 -0
  11. package/esm2015/lib/components/ndf-signatures/ndf-signature-panel/ndf-signature-panel.component.js +132 -0
  12. package/esm2015/lib/components/ndf-signatures/ndf-signatures.module.js +68 -0
  13. package/esm2015/lib/components/ndf-signatures/services/index.js +2 -0
  14. package/esm2015/lib/components/ndf-signatures/services/signatures.service.js +307 -0
  15. package/esm2015/lib/shared/components/nuxeo-dialog/models/dialog-option.model.js +1 -1
  16. package/esm2015/public-api.js +2 -1
  17. package/fesm2015/nuxeo-development-framework.js +700 -6
  18. package/fesm2015/nuxeo-development-framework.js.map +1 -1
  19. package/lib/components/dynamic-form/components/dynamic-form-select-users/dynamic-form-select-users.component.d.ts +0 -1
  20. package/lib/components/ndf-signatures/emdha/dialogs/auth/emdha-auth.dialog.d.ts +18 -0
  21. package/lib/components/ndf-signatures/emdha/dialogs/index.d.ts +1 -0
  22. package/lib/components/ndf-signatures/emdha/index.d.ts +2 -0
  23. package/lib/components/ndf-signatures/emdha/services/emdha.service.d.ts +31 -0
  24. package/lib/components/ndf-signatures/emdha/services/index.d.ts +1 -0
  25. package/lib/components/ndf-signatures/index.d.ts +4 -0
  26. package/lib/components/ndf-signatures/ndf-signature-panel/ndf-signature-panel.component.d.ts +37 -0
  27. package/lib/components/ndf-signatures/ndf-signatures.module.d.ts +17 -0
  28. package/lib/components/ndf-signatures/services/index.d.ts +1 -0
  29. package/lib/components/ndf-signatures/services/signatures.service.d.ts +53 -0
  30. package/lib/shared/components/nuxeo-dialog/models/dialog-option.model.d.ts +1 -0
  31. package/package.json +1 -1
  32. package/public-api.d.ts +1 -0
@@ -12698,8 +12698,6 @@
12698
12698
  });
12699
12699
  return filterData;
12700
12700
  };
12701
- DynamicFormSelectUsersComponent.prototype.getUsersUnderCertainGroup = function () {
12702
- };
12703
12701
  DynamicFormSelectUsersComponent.prototype.reset = function () {
12704
12702
  this.ngSelectComponent.handleClearClick();
12705
12703
  };
@@ -33849,7 +33847,7 @@
33849
33847
  return SingleActivityComponent;
33850
33848
  }());
33851
33849
  SingleActivityComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: SingleActivityComponent, deps: [{ token: AppConfigService }], target: i0__namespace.ɵɵFactoryTarget.Component });
33852
- SingleActivityComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: SingleActivityComponent, selector: "cts-single-activity", inputs: { item: "item", documentTitle: "documentTitle", newLogActor: "newLogActor", isArabic: "isArabic" }, ngImport: i0__namespace, template: "<ng-container *ngIf=\"item\">\r\n <div class=\"avtivity-wrapper\">\r\n <div class=\"avtivity-point border-primary {{ item.documentLifecycle }}\">\r\n <span class=\"{{stateIcons[item.eventName]}} new-icon-section\"></span>\r\n </div>\r\n <div class=\"avtivity-panal border-primary {{ item.documentLifecycle }}\">\r\n <div class=\"avtivity-corr-status border-primary {{ item.documentLifecycle }}\">\r\n {{ \"STATS.\" + item.documentLifecycle | translate }}\r\n </div>\r\n <div class=\"avtivity-heading\">\r\n <div class=\"avtivity-title\">\r\n <div class=\"status\">{{ \"ACTIVITY_LOG.status.\" + item.eventName | translate }}</div>\r\n <div class=\"\">\r\n {{ item.creator.id === 'system' ? ('SYSTEM_ADMIN' | translate) : item.creator.properties.firstName + \" \" +item.creator.properties.lastName }}\r\n </div>\r\n </div>\r\n <div class=\"avtivity-date\">\r\n <div>{{ item.eventDate | localizedDate: \"M/d/y\" }}</div>\r\n <div>{{ item.eventDate | localizedDate: \"h:mm a\" }}</div>\r\n </div>\r\n <div class=\"defult-avtivity-date\">\r\n <div>{{ item.eventDate | localizedDate: defultDateFormate :(isArabic? 'ar-AR' : 'en-US') }}</div>\r\n </div>\r\n </div>\r\n <div class=\"avtivity-body\">\r\n <cts-activity-line\r\n [newLogActor]=\"newLogActor\"\r\n [item]=\"item\"\r\n [isArabic]=\"isArabic\"\r\n [documentTitle]=\"item.documentName\"\r\n ></cts-activity-line>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-container>\r\n\r\n<!-- <div class=\"d-flex\">\r\n <div class=\"myLink link creator\" id=\"parent3\">{{ creator }}</div>\r\n <div class=\"mx-1\">send the correspondence</div>\r\n <div class=\"myLink link\" id=\"child3\">{{ param2 }}</div>\r\n <div class=\"myLink to\" id=\"child3\">to</div>\r\n <div class=\"myLink link\" id=\"child3\">{{corr:to}}</div>\r\n <div class=\"myLink link\" id=\"child3\">and assigned it to</div>\r\n <div class=\"myLink link\" id=\"child3\">{{corr:owner}}</div>\r\n</div> -->\r\n", styles: [".bi{margin:0!important}.memo-sorting-wrapper{width:265px;margin:0 10px;height:100%;display:flex}.memo-sorting-wrapper .sorting-direction{width:65px;height:40px;background-color:#465573;color:#fff;font-size:20px;display:flex;justify-content:center;align-items:center;cursor:pointer}.memo-sorting-wrapper .memo-sorting-trigger{width:calc(100% - 65px);height:100%;background-color:transparent;border:1px solid lightgrey;display:flex;justify-content:space-between;align-items:center;padding:0 15px;font-size:14px}.memo-sorting-wrapper .memo-sorting-trigger i{font-size:16px;color:gray}.memo-sorting-menu{width:200px}.my-button{border:1px solid #465573;color:#465573;border-radius:5px;background-color:transparent;font-weight:bold;min-width:80px;height:40px}.my-button.reset{border:none}.my-button:hover{color:#fff;background-color:#465573}.my-button:hover.reset{color:#465573;border:1px solid #465573;background-color:#fff}.app-property-value .app-input-wrapper label{color:#646f85;font-size:13px;margin-bottom:5px}.app-property-value .app-input-wrapper label .text-danger{font-size:16px;line-height:14px;margin:0 5px!important}.app-property-value .app-input-wrapper .form-control{border:1px solid #ccc;border-radius:5px;background-color:#8f98aa1a;height:40px}.app-property-value .app-input-wrapper .form-control:disabled{background-color:#e9ecef!important}.app-property-value .app-input-wrapper .form-control:focus{border:1px solid #1a96c6;box-shadow:0 0 4px #79c3c26b!important}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers{list-style:none;padding:0;margin:0;font-size:14px}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers .error{margin-top:5px}.autocomplete-container .input-container input:focus,hijri-gregorian-datepicker .form-group .input-group .form-control:focus,.ng-select.ng-select-focused .ng-select-container{border:1px solid #1a96c6!important;box-shadow:0 0 4px #79c3c26b!important}input::placeholder{font-size:12px}.form-control:focus{box-shadow:none!important}.mat-stepper-horizontal{margin-top:-25px}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header.cdk-program-focused{background-color:transparent}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-icon-selected{background-color:transparent;color:#fff;background-image:linear-gradient(to right,#0dbab5,#1a96c6)}@media only screen and (max-width: 576px){.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-label .mat-step-text-label{white-space:pre-wrap;overflow:visible}}.mat-stepper-horizontal .mat-horizontal-content-container{overflow:visible}@media only screen and (max-width: 768px){.mat-stepper-horizontal .mat-horizontal-content-container{padding:0 0 24px}}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:after,.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:before{display:none}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:before{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);left:0}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:after{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);right:0}.form-wrapper{padding:30px 15px;border:1px solid #dde0e2}.form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.form-wrapper .buttons-wrapper button:hover{opacity:.7}.form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.form-wrapper .upload-wrapper button span{margin:0 10px}.renameFileComponent .form-wrapper{padding:30px 15px;border:none!important}.renameFileComponent .form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.renameFileComponent .form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.renameFileComponent .form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.renameFileComponent .form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.renameFileComponent .form-wrapper .buttons-wrapper button:hover{opacity:.7}.renameFileComponent .form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.renameFileComponent .form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.renameFileComponent .form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.renameFileComponent .form-wrapper .upload-wrapper button span{margin:0 10px}.my-dynamic-viewer{display:flex;align-items:center;font-size:12px;min-height:30px}.my-dynamic-viewer .my-label{font-size:12px;font-weight:500;width:150px;word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-label{width:50%}}.my-dynamic-viewer .my-value{width:calc(100% - 150px);word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-value{width:50%}}.my-dynamic-viewer .direction-img{font-size:14px}.my-dynamic-viewer .direction-img .incoming{display:none}.my-dynamic-viewer .direction-img .outgoing{display:none}.my-dynamic-viewer .direction-img .internal{display:none}.my-dynamic-viewer.draft .my-value{color:#596973}.my-dynamic-viewer.inProgress .my-value{color:#3c3cf0}.my-dynamic-viewer.registered .my-value{color:#4f008c}.my-dynamic-viewer.archived .my-value{color:#fbb62c}.my-dynamic-viewer.closed .my-value{color:#00dca5}.my-dynamic-viewer.approved .my-value{color:#06a57e}.my-dynamic-viewer.assigned .my-value{color:#fd6670}.my-dynamic-viewer.sent .my-value{color:#3c3cf0}.my-dynamic-viewer.published .my-value{color:#00dca5}.my-dynamic-viewer.Outgoing .my-value{display:flex}.my-dynamic-viewer.Outgoing .my-value .direction-img .outgoing{color:#fbb62c;margin:1px 5px;display:flex}.my-dynamic-viewer.Outgoing .my-value .text{margin:0 5px}.my-dynamic-viewer.Internal .my-value{display:flex}.my-dynamic-viewer.Internal .my-value .direction-img .internal{color:#3c3cf0;margin:1px 5px;display:flex}.my-dynamic-viewer.Internal .my-value .text{margin:0 5px}.my-dynamic-viewer.Incoming .my-value{display:flex}.my-dynamic-viewer.Incoming .my-value .direction-img .incoming{color:#00dca5;display:flex}.my-dynamic-viewer.Incoming .my-value .text{margin:-3px 5px 0}.my-dynamic-viewer.vertical{display:block}.my-dynamic-viewer.vertical .my-label{width:auto}.my-dynamic-viewer.vertical .my-value{width:auto}.my-dynamic-viewer.with-out-label{width:100%!important}.avtivity-wrapper{margin-bottom:36px;background:#fff;display:flex;position:relative}.avtivity-wrapper .avtivity-point{display:block;width:14px;height:14px;border-radius:50%;border:4px solid #0dbab5;background-color:#fff;position:absolute;top:0px;left:-28px}.avtivity-wrapper .avtivity-point .new-icon-section{display:none}.avtivity-wrapper .avtivity-point.draft{border-color:#596973!important}.avtivity-wrapper .avtivity-point.registered{border-color:#5a1496!important}.avtivity-wrapper .avtivity-point.closed{border-color:#00dca5!important}.avtivity-wrapper .avtivity-point.inProgress{border-color:#3c3cf0!important}.avtivity-wrapper .avtivity-point.archived{border-color:#fbb62c!important}.avtivity-wrapper .avtivity-panal{width:100%;border-radius:8px;border-inline-start:8px solid #0dbab5;padding:20px;position:relative;box-shadow:0 0 25px #0000001a}.avtivity-wrapper .avtivity-panal.draft{border-color:#596973!important}.avtivity-wrapper .avtivity-panal.registered{border-color:#5a1496!important}.avtivity-wrapper .avtivity-panal.inProgress{border-color:#3c3cf0!important}.avtivity-wrapper .avtivity-panal.closed{border-color:#00dca5!important}.avtivity-wrapper .avtivity-panal.archived{border-color:#fbb62c!important}.avtivity-wrapper .avtivity-panal.meeting_created{border-color:#3c3cf0!important}.avtivity-wrapper .avtivity-panal .avtivity-corr-status{position:absolute;background:#ffffff;font-size:11px;width:100px;height:24px;border:1px solid #0dbab5;border-radius:5px;left:11px;top:-13px;text-align:center;display:flex;align-items:center;justify-content:center}.avtivity-wrapper .avtivity-panal .avtivity-corr-status.draft{border-color:#596973!important}.avtivity-wrapper .avtivity-panal .avtivity-corr-status.registered{border-color:#5a1496!important}.avtivity-wrapper .avtivity-panal .avtivity-corr-status.inProgress{border-color:#3c3cf0!important}.avtivity-wrapper .avtivity-panal .avtivity-corr-status.closed{border-color:#00dca5!important}.avtivity-wrapper .avtivity-panal .avtivity-corr-status.archived{border-color:#fbb62c!important}.avtivity-wrapper .avtivity-panal .avtivity-corr-status.meeting_created{border-color:#3c3cf0!important}.avtivity-wrapper .avtivity-panal .avtivity-heading{display:flex;justify-content:space-between;margin-bottom:10px;border-bottom:2px solid #f5f6f8}.avtivity-wrapper .avtivity-panal .avtivity-heading .avtivity-date{font-size:12px;color:#6a768e}.avtivity-wrapper .avtivity-panal .avtivity-heading .defult-avtivity-date{font-size:12px;color:#6a768e;display:none}.avtivity-wrapper .avtivity-panal .avtivity-heading .avtivity-title{margin-bottom:8px;font-size:14px;color:#6a768e}.avtivity-wrapper .avtivity-panal .avtivity-heading .avtivity-title .status{font-weight:400;font-size:16px;color:#465573!important}.rtl .avtivity-corr-status{left:unset;right:11px}.rtl .avtivity-point{left:unset;right:-28px}\n"], components: [{ type: ActivityLineComponent, selector: "cts-activity-line", inputs: ["item", "documentTitle", "newLogActor", "isArabic"] }], directives: [{ type: i4__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i1__namespace.TranslatePipe, "localizedDate": LocalizedDatePipe }, encapsulation: i0__namespace.ViewEncapsulation.None });
33850
+ SingleActivityComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: SingleActivityComponent, selector: "cts-single-activity", inputs: { item: "item", documentTitle: "documentTitle", newLogActor: "newLogActor", isArabic: "isArabic" }, ngImport: i0__namespace, template: "<ng-container *ngIf=\"item\">\r\n <div class=\"avtivity-wrapper\">\r\n <div class=\"avtivity-point border-primary {{ item.documentLifecycle }}\">\r\n <span class=\"{{stateIcons[item.eventName]}} new-icon-section\"></span>\r\n </div>\r\n <div class=\"avtivity-panal border-primary {{ item.documentLifecycle }}\">\r\n <div class=\"avtivity-corr-status border-primary {{ item.documentLifecycle }}\">\r\n {{ \"STATS.\" + item.documentLifecycle | translate }}\r\n </div>\r\n <div class=\"avtivity-heading\">\r\n <div class=\"avtivity-title\">\r\n <div *ngIf=\"item.eventName == 'incoming_assignment_create'\" class=\"status\">{{ \"ACTIVITY_LOG.status.\" + item.eventName | translate }} {{item.extendedInfo.assignmentType?(\"ACTIVITY_LOG.assignmentTypes.\" + item.extendedInfo.assignmentType | translate):''}}</div>\r\n <div *ngIf=\"item.eventName !== 'incoming_assignment_create'\" class=\"status\">{{ \"ACTIVITY_LOG.status.\" + item.eventName | translate }}</div>\r\n\r\n <div class=\"\">\r\n {{ item.creator.id === 'system' ? ('SYSTEM_ADMIN' | translate) : item.creator.properties.firstName + \" \" +item.creator.properties.lastName }}\r\n </div>\r\n </div>\r\n <div class=\"avtivity-date\">\r\n <div>{{ item.eventDate | localizedDate: \"M/d/y\" }}</div>\r\n <div>{{ item.eventDate | localizedDate: \"h:mm a\" }}</div>\r\n </div>\r\n <div class=\"defult-avtivity-date\">\r\n <div>{{ item.eventDate | localizedDate: defultDateFormate :(isArabic? 'ar-AR' : 'en-US') }}</div>\r\n </div>\r\n </div>\r\n <div class=\"avtivity-body\">\r\n <cts-activity-line\r\n [newLogActor]=\"newLogActor\"\r\n [item]=\"item\"\r\n [isArabic]=\"isArabic\"\r\n [documentTitle]=\"item.documentName\"\r\n ></cts-activity-line>\r\n </div>\r\n </div>\r\n </div>\r\n</ng-container>\r\n\r\n<!-- <div class=\"d-flex\">\r\n <div class=\"myLink link creator\" id=\"parent3\">{{ creator }}</div>\r\n <div class=\"mx-1\">send the correspondence</div>\r\n <div class=\"myLink link\" id=\"child3\">{{ param2 }}</div>\r\n <div class=\"myLink to\" id=\"child3\">to</div>\r\n <div class=\"myLink link\" id=\"child3\">{{corr:to}}</div>\r\n <div class=\"myLink link\" id=\"child3\">and assigned it to</div>\r\n <div class=\"myLink link\" id=\"child3\">{{corr:owner}}</div>\r\n</div> -->\r\n", styles: [".bi{margin:0!important}.memo-sorting-wrapper{width:265px;margin:0 10px;height:100%;display:flex}.memo-sorting-wrapper .sorting-direction{width:65px;height:40px;background-color:#465573;color:#fff;font-size:20px;display:flex;justify-content:center;align-items:center;cursor:pointer}.memo-sorting-wrapper .memo-sorting-trigger{width:calc(100% - 65px);height:100%;background-color:transparent;border:1px solid lightgrey;display:flex;justify-content:space-between;align-items:center;padding:0 15px;font-size:14px}.memo-sorting-wrapper .memo-sorting-trigger i{font-size:16px;color:gray}.memo-sorting-menu{width:200px}.my-button{border:1px solid #465573;color:#465573;border-radius:5px;background-color:transparent;font-weight:bold;min-width:80px;height:40px}.my-button.reset{border:none}.my-button:hover{color:#fff;background-color:#465573}.my-button:hover.reset{color:#465573;border:1px solid #465573;background-color:#fff}.app-property-value .app-input-wrapper label{color:#646f85;font-size:13px;margin-bottom:5px}.app-property-value .app-input-wrapper label .text-danger{font-size:16px;line-height:14px;margin:0 5px!important}.app-property-value .app-input-wrapper .form-control{border:1px solid #ccc;border-radius:5px;background-color:#8f98aa1a;height:40px}.app-property-value .app-input-wrapper .form-control:disabled{background-color:#e9ecef!important}.app-property-value .app-input-wrapper .form-control:focus{border:1px solid #1a96c6;box-shadow:0 0 4px #79c3c26b!important}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers{list-style:none;padding:0;margin:0;font-size:14px}.app-property-value .app-input-wrapper .app-textitem-editable-error .error-containers .error{margin-top:5px}.autocomplete-container .input-container input:focus,hijri-gregorian-datepicker .form-group .input-group .form-control:focus,.ng-select.ng-select-focused .ng-select-container{border:1px solid #1a96c6!important;box-shadow:0 0 4px #79c3c26b!important}input::placeholder{font-size:12px}.form-control:focus{box-shadow:none!important}.mat-stepper-horizontal{margin-top:-25px}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header.cdk-program-focused{background-color:transparent}.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-icon-selected{background-color:transparent;color:#fff;background-image:linear-gradient(to right,#0dbab5,#1a96c6)}@media only screen and (max-width: 576px){.mat-stepper-horizontal .mat-horizontal-stepper-header-container .mat-step-header .mat-step-label .mat-step-text-label{white-space:pre-wrap;overflow:visible}}.mat-stepper-horizontal .mat-horizontal-content-container{overflow:visible}@media only screen and (max-width: 768px){.mat-stepper-horizontal .mat-horizontal-content-container{padding:0 0 24px}}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:after,.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:before{display:none}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:first-child:before{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);left:0}.mat-stepper-horizontal.rtl .mat-horizontal-stepper-header:last-child:after{border-top-width:1px;border-top-style:solid;content:\"\";display:inline-block;height:0;position:absolute;width:calc(50% - 20px);right:0}.form-wrapper{padding:30px 15px;border:1px solid #dde0e2}.form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.form-wrapper .buttons-wrapper button:hover{opacity:.7}.form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.form-wrapper .upload-wrapper button span{margin:0 10px}.renameFileComponent .form-wrapper{padding:30px 15px;border:none!important}.renameFileComponent .form-wrapper .buttons-wrapper{display:flex;justify-content:space-between}.renameFileComponent .form-wrapper .buttons-wrapper .action-buttons-wrapper{display:flex}.renameFileComponent .form-wrapper .buttons-wrapper button{background-image:linear-gradient(to right,#0dbab5,#1a96c6);height:40px;color:#fff;border:none;width:125px;margin-top:20px;border-radius:5px}.renameFileComponent .form-wrapper .buttons-wrapper button:disabled{opacity:.4;cursor:not-allowed}.renameFileComponent .form-wrapper .buttons-wrapper button:hover{opacity:.7}.renameFileComponent .form-wrapper .upload-wrapper{display:flex;flex-direction:column;justify-content:flex-end}.renameFileComponent .form-wrapper .upload-wrapper label{color:#8f98aa;font-size:14px}.renameFileComponent .form-wrapper .upload-wrapper button{padding:10px;border:1px solid lightgray}.renameFileComponent .form-wrapper .upload-wrapper button span{margin:0 10px}.my-dynamic-viewer{display:flex;align-items:center;font-size:12px;min-height:30px}.my-dynamic-viewer .my-label{font-size:12px;font-weight:500;width:150px;word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-label{width:50%}}.my-dynamic-viewer .my-value{width:calc(100% - 150px);word-break:break-word}@media (max-width: 992px){.my-dynamic-viewer .my-value{width:50%}}.my-dynamic-viewer .direction-img{font-size:14px}.my-dynamic-viewer .direction-img .incoming{display:none}.my-dynamic-viewer .direction-img .outgoing{display:none}.my-dynamic-viewer .direction-img .internal{display:none}.my-dynamic-viewer.draft .my-value{color:#596973}.my-dynamic-viewer.inProgress .my-value{color:#3c3cf0}.my-dynamic-viewer.registered .my-value{color:#4f008c}.my-dynamic-viewer.archived .my-value{color:#fbb62c}.my-dynamic-viewer.closed .my-value{color:#00dca5}.my-dynamic-viewer.approved .my-value{color:#06a57e}.my-dynamic-viewer.assigned .my-value{color:#fd6670}.my-dynamic-viewer.sent .my-value{color:#3c3cf0}.my-dynamic-viewer.published .my-value{color:#00dca5}.my-dynamic-viewer.Outgoing .my-value{display:flex}.my-dynamic-viewer.Outgoing .my-value .direction-img .outgoing{color:#fbb62c;margin:1px 5px;display:flex}.my-dynamic-viewer.Outgoing .my-value .text{margin:0 5px}.my-dynamic-viewer.Internal .my-value{display:flex}.my-dynamic-viewer.Internal .my-value .direction-img .internal{color:#3c3cf0;margin:1px 5px;display:flex}.my-dynamic-viewer.Internal .my-value .text{margin:0 5px}.my-dynamic-viewer.Incoming .my-value{display:flex}.my-dynamic-viewer.Incoming .my-value .direction-img .incoming{color:#00dca5;display:flex}.my-dynamic-viewer.Incoming .my-value .text{margin:-3px 5px 0}.my-dynamic-viewer.vertical{display:block}.my-dynamic-viewer.vertical .my-label{width:auto}.my-dynamic-viewer.vertical .my-value{width:auto}.my-dynamic-viewer.with-out-label{width:100%!important}.avtivity-wrapper{margin-bottom:36px;background:#fff;display:flex;position:relative}.avtivity-wrapper .avtivity-point{display:block;width:14px;height:14px;border-radius:50%;border:4px solid #0dbab5;background-color:#fff;position:absolute;top:0px;left:-28px}.avtivity-wrapper .avtivity-point .new-icon-section{display:none}.avtivity-wrapper .avtivity-point.draft{border-color:#596973!important}.avtivity-wrapper .avtivity-point.registered{border-color:#5a1496!important}.avtivity-wrapper .avtivity-point.closed{border-color:#00dca5!important}.avtivity-wrapper .avtivity-point.inProgress{border-color:#3c3cf0!important}.avtivity-wrapper .avtivity-point.archived{border-color:#fbb62c!important}.avtivity-wrapper .avtivity-panal{width:100%;border-radius:8px;border-inline-start:8px solid #0dbab5;padding:20px;position:relative;box-shadow:0 0 25px #0000001a}.avtivity-wrapper .avtivity-panal.draft{border-color:#596973!important}.avtivity-wrapper .avtivity-panal.registered{border-color:#5a1496!important}.avtivity-wrapper .avtivity-panal.inProgress{border-color:#3c3cf0!important}.avtivity-wrapper .avtivity-panal.closed{border-color:#00dca5!important}.avtivity-wrapper .avtivity-panal.archived{border-color:#fbb62c!important}.avtivity-wrapper .avtivity-panal.meeting_created{border-color:#3c3cf0!important}.avtivity-wrapper .avtivity-panal .avtivity-corr-status{position:absolute;background:#ffffff;font-size:11px;width:100px;height:24px;border:1px solid #0dbab5;border-radius:5px;left:11px;top:-13px;text-align:center;display:flex;align-items:center;justify-content:center}.avtivity-wrapper .avtivity-panal .avtivity-corr-status.draft{border-color:#596973!important}.avtivity-wrapper .avtivity-panal .avtivity-corr-status.registered{border-color:#5a1496!important}.avtivity-wrapper .avtivity-panal .avtivity-corr-status.inProgress{border-color:#3c3cf0!important}.avtivity-wrapper .avtivity-panal .avtivity-corr-status.closed{border-color:#00dca5!important}.avtivity-wrapper .avtivity-panal .avtivity-corr-status.archived{border-color:#fbb62c!important}.avtivity-wrapper .avtivity-panal .avtivity-corr-status.meeting_created{border-color:#3c3cf0!important}.avtivity-wrapper .avtivity-panal .avtivity-heading{display:flex;justify-content:space-between;margin-bottom:10px;border-bottom:2px solid #f5f6f8}.avtivity-wrapper .avtivity-panal .avtivity-heading .avtivity-date{font-size:12px;color:#6a768e}.avtivity-wrapper .avtivity-panal .avtivity-heading .defult-avtivity-date{font-size:12px;color:#6a768e;display:none}.avtivity-wrapper .avtivity-panal .avtivity-heading .avtivity-title{margin-bottom:8px;font-size:14px;color:#6a768e}.avtivity-wrapper .avtivity-panal .avtivity-heading .avtivity-title .status{font-weight:400;font-size:16px;color:#465573!important}.rtl .avtivity-corr-status{left:unset;right:11px}.rtl .avtivity-point{left:unset;right:-28px}\n"], components: [{ type: ActivityLineComponent, selector: "cts-activity-line", inputs: ["item", "documentTitle", "newLogActor", "isArabic"] }], directives: [{ type: i4__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "translate": i1__namespace.TranslatePipe, "localizedDate": LocalizedDatePipe }, encapsulation: i0__namespace.ViewEncapsulation.None });
33853
33851
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: SingleActivityComponent, decorators: [{
33854
33852
  type: i0.Component,
33855
33853
  args: [{
@@ -50869,6 +50867,756 @@
50869
50867
  }]
50870
50868
  }] });
50871
50869
 
50870
+ var _EmdhaService_instances, _EmdhaService_txnId, _EmdhaService_emdhaPayload, _EmdhaService_displayCode, _EmdhaService_environment_get, _EmdhaService_checkTransactionStatus;
50871
+ exports.TransactionStatus = void 0;
50872
+ (function (TransactionStatus) {
50873
+ TransactionStatus["Pending"] = "pending";
50874
+ TransactionStatus["Authorized"] = "authorized";
50875
+ TransactionStatus["Failed"] = "failed";
50876
+ TransactionStatus["NotFound"] = "notfound";
50877
+ TransactionStatus["Error"] = "error";
50878
+ })(exports.TransactionStatus || (exports.TransactionStatus = {}));
50879
+ var EmdhaService = /** @class */ (function (_super) {
50880
+ __extends(EmdhaService, _super);
50881
+ function EmdhaService(injector, nuxeoDialogService) {
50882
+ var _this = _super.call(this, injector) || this;
50883
+ _this.nuxeoDialogService = nuxeoDialogService;
50884
+ _EmdhaService_instances.add(_this);
50885
+ _EmdhaService_txnId.set(_this, void 0);
50886
+ _EmdhaService_emdhaPayload.set(_this, void 0);
50887
+ _EmdhaService_displayCode.set(_this, void 0);
50888
+ return _this;
50889
+ }
50890
+ Object.defineProperty(EmdhaService.prototype, "displayCode", {
50891
+ get: function () {
50892
+ return __classPrivateFieldGet(this, _EmdhaService_displayCode, "f");
50893
+ },
50894
+ enumerable: false,
50895
+ configurable: true
50896
+ });
50897
+ Object.defineProperty(EmdhaService.prototype, "headers", {
50898
+ get: function () {
50899
+ var header = new i1$2.HttpHeaders();
50900
+ if (this.customToken) {
50901
+ header = header.append('Authorization', this.customToken);
50902
+ }
50903
+ return header;
50904
+ },
50905
+ enumerable: false,
50906
+ configurable: true
50907
+ });
50908
+ EmdhaService.prototype.start = function (component, emdhaPayload) {
50909
+ __classPrivateFieldSet(this, _EmdhaService_emdhaPayload, emdhaPayload, "f");
50910
+ var options = {
50911
+ component: component,
50912
+ panelClass: 'emdha-auth-dialog-container',
50913
+ width: '400px',
50914
+ minWidth: '400px',
50915
+ data: {},
50916
+ };
50917
+ return this.nuxeoDialogService
50918
+ .open(options)
50919
+ .afterClosed()
50920
+ .pipe(operators.take(1), operators.map(function (res) {
50921
+ if (res) {
50922
+ return true;
50923
+ }
50924
+ else {
50925
+ return false;
50926
+ }
50927
+ }));
50928
+ };
50929
+ EmdhaService.prototype.auth = function (signerId) {
50930
+ var _this = this;
50931
+ var payload = {
50932
+ params: {
50933
+ signerId: signerId,
50934
+ assuranceLevel: 'm',
50935
+ },
50936
+ };
50937
+ return this.post({
50938
+ endpoint: __classPrivateFieldGet(this, _EmdhaService_instances, "a", _EmdhaService_environment_get).nuxeo + "/site/automation/Emdha.SignerAuth",
50939
+ payload: payload,
50940
+ headers: this.headers
50941
+ }).pipe(operators.tap(function (data) {
50942
+ __classPrivateFieldSet(_this, _EmdhaService_txnId, data.txnId, "f");
50943
+ __classPrivateFieldSet(_this, _EmdhaService_displayCode, data.displayCode, "f");
50944
+ }));
50945
+ };
50946
+ EmdhaService.prototype.checkTransactionStatus = function () {
50947
+ var _this = this;
50948
+ return __classPrivateFieldGet(this, _EmdhaService_instances, "m", _EmdhaService_checkTransactionStatus).call(this).pipe(operators.map(function (data) { return ({ data: data, attempt: 1 }); }), operators.expand(function (_c) {
50949
+ var data = _c.data, attempt = _c.attempt;
50950
+ var _a, _b;
50951
+ var state = (_a = data === null || data === void 0 ? void 0 : data.value) === null || _a === void 0 ? void 0 : _a.state;
50952
+ if (state === 'authorized') {
50953
+ return rxjs.of(data);
50954
+ }
50955
+ if (['failed', 'notfound', 'error'].includes(state)) {
50956
+ return rxjs.throwError(function () { return new Error("Transaction " + state); });
50957
+ }
50958
+ if (attempt >= (((_b = __classPrivateFieldGet(_this, _EmdhaService_instances, "a", _EmdhaService_environment_get).emdhaSignature) === null || _b === void 0 ? void 0 : _b.maxAttempts) || 60)) {
50959
+ return rxjs.throwError(function () { return new Error('Max retry attempts reached'); });
50960
+ }
50961
+ return rxjs.timer(__classPrivateFieldGet(_this, _EmdhaService_instances, "a", _EmdhaService_environment_get).emdhaSignature.delayMs || 2000).pipe(operators.switchMap(function () { return __classPrivateFieldGet(_this, _EmdhaService_instances, "m", _EmdhaService_checkTransactionStatus).call(_this); }), operators.map(function (nextData) { return ({ data: nextData, attempt: attempt + 1 }); }));
50962
+ }), operators.filter(function (data) { var _a; return ((_a = data === null || data === void 0 ? void 0 : data.value) === null || _a === void 0 ? void 0 : _a.state) === 'authorized'; }), operators.take(1), operators.map(function (_c) {
50963
+ var data = _c.data;
50964
+ return data;
50965
+ }));
50966
+ };
50967
+ EmdhaService.prototype.signDocument = function () {
50968
+ var _a, _b;
50969
+ var signBase64 = __classPrivateFieldGet(this, _EmdhaService_emdhaPayload, "f").signImage.split(',')[1];
50970
+ var payload = {
50971
+ params: {
50972
+ signerName: this.user.fullName || 'comptech',
50973
+ emailId: ((_a = this.user.properties) === null || _a === void 0 ? void 0 : _a.email) || 'comptech@comptech.com',
50974
+ mobileNumber: ((_b = this.user.properties) === null || _b === void 0 ? void 0 : _b.phoneNumber) || '0000000000',
50975
+ targetDocumentId: __classPrivateFieldGet(this, _EmdhaService_emdhaPayload, "f").uid,
50976
+ pageNumber: __classPrivateFieldGet(this, _EmdhaService_emdhaPayload, "f").pageNumber,
50977
+ pageCoordinates: __classPrivateFieldGet(this, _EmdhaService_emdhaPayload, "f").pageCoordinates,
50978
+ returnSignedDocument: false,
50979
+ logoBase64: signBase64,
50980
+ },
50981
+ };
50982
+ return this.post({
50983
+ endpoint: __classPrivateFieldGet(this, _EmdhaService_instances, "a", _EmdhaService_environment_get).nuxeo + "/site/automation/Emdha.SignDocument",
50984
+ payload: payload,
50985
+ headers: this.headers
50986
+ });
50987
+ };
50988
+ return EmdhaService;
50989
+ }(BaseService));
50990
+ _EmdhaService_txnId = new WeakMap(), _EmdhaService_emdhaPayload = new WeakMap(), _EmdhaService_displayCode = new WeakMap(), _EmdhaService_instances = new WeakSet(), _EmdhaService_environment_get = function _EmdhaService_environment_get() {
50991
+ return EnvManager.environment;
50992
+ }, _EmdhaService_checkTransactionStatus = function _EmdhaService_checkTransactionStatus() {
50993
+ var payload = {
50994
+ params: {
50995
+ txnId: __classPrivateFieldGet(this, _EmdhaService_txnId, "f"),
50996
+ },
50997
+ };
50998
+ return this.post({
50999
+ endpoint: __classPrivateFieldGet(this, _EmdhaService_instances, "a", _EmdhaService_environment_get).nuxeo + "/site/automation/Emdha.CheckTransactionStatus",
51000
+ payload: payload,
51001
+ headers: this.headers
51002
+ });
51003
+ };
51004
+ EmdhaService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: EmdhaService, deps: [{ token: i0__namespace.Injector }, { token: NuxeoDialogService }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
51005
+ EmdhaService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: EmdhaService, providedIn: 'root' });
51006
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: EmdhaService, decorators: [{
51007
+ type: i0.Injectable,
51008
+ args: [{ providedIn: 'root' }]
51009
+ }], ctorParameters: function () { return [{ type: i0__namespace.Injector }, { type: NuxeoDialogService }]; } });
51010
+
51011
+ var _EmdhaAuthDialog_instances, _EmdhaAuthDialog_listenerTransactionStatus, _EmdhaAuthDialog_signDocument;
51012
+ var EmdhaAuthDialog = /** @class */ (function (_super) {
51013
+ __extends(EmdhaAuthDialog, _super);
51014
+ function EmdhaAuthDialog(injector, emdhaService) {
51015
+ var _this = _super.call(this, injector) || this;
51016
+ _this.emdhaService = emdhaService;
51017
+ _EmdhaAuthDialog_instances.add(_this);
51018
+ _this.emdhaForm = new i2.FormGroup({
51019
+ idNumber: new i2.FormControl(null, [
51020
+ i2.Validators.required,
51021
+ i2.Validators.minLength(10),
51022
+ i2.Validators.minLength(10),
51023
+ ]),
51024
+ });
51025
+ _this.displayCode = '';
51026
+ _this.proccessingSign = false;
51027
+ return _this;
51028
+ }
51029
+ Object.defineProperty(EmdhaAuthDialog.prototype, "getDialogTitle", {
51030
+ get: function () {
51031
+ if (this.proccessingSign) {
51032
+ return 'viewer.emdha.authenticating';
51033
+ }
51034
+ else if (this.displayCode) {
51035
+ return 'viewer.emdha.auth-confirmation';
51036
+ }
51037
+ return 'viewer.emdha.auth';
51038
+ },
51039
+ enumerable: false,
51040
+ configurable: true
51041
+ });
51042
+ EmdhaAuthDialog.prototype.ngOnInit = function () {
51043
+ var _this = this;
51044
+ this.loading = true;
51045
+ this.proccessingSign = true;
51046
+ __classPrivateFieldGet(this, _EmdhaAuthDialog_instances, "m", _EmdhaAuthDialog_signDocument).call(this)
51047
+ .pipe(operators.takeUntil(this.destroy$))
51048
+ .subscribe(function (data) {
51049
+ _this.loading = false;
51050
+ _this.proccessingSign = false;
51051
+ if (data.code == 'NO_TOKEN') {
51052
+ return;
51053
+ }
51054
+ else {
51055
+ _this.close(true);
51056
+ }
51057
+ }, function (error) {
51058
+ _this.loading = false;
51059
+ _this.proccessingSign = false;
51060
+ console.log(error);
51061
+ _this.toastrService.error('viewer.emdha.auth-error');
51062
+ _this.close(false);
51063
+ });
51064
+ };
51065
+ EmdhaAuthDialog.prototype.signerAuth = function () {
51066
+ var _this = this;
51067
+ this.loading = true;
51068
+ this.emdhaService
51069
+ .auth(this.emdhaForm.controls['idNumber'].value)
51070
+ .pipe(operators.takeUntil(this.destroy$), operators.finalize(function () {
51071
+ _this.loading = false;
51072
+ }))
51073
+ .subscribe(function (data) {
51074
+ _this.displayCode = data.displayCode;
51075
+ __classPrivateFieldGet(_this, _EmdhaAuthDialog_instances, "m", _EmdhaAuthDialog_listenerTransactionStatus).call(_this);
51076
+ }, function (error) {
51077
+ if (error.error.includes('THERE IS AN ACTIVE TRANSACTION')) {
51078
+ _this.displayCode = _this.emdhaService.displayCode;
51079
+ __classPrivateFieldGet(_this, _EmdhaAuthDialog_instances, "m", _EmdhaAuthDialog_listenerTransactionStatus).call(_this);
51080
+ }
51081
+ else {
51082
+ _this.toastrService.error('viewer.emdha.auth-error');
51083
+ _this.close(false);
51084
+ }
51085
+ });
51086
+ };
51087
+ return EmdhaAuthDialog;
51088
+ }(BaseDialogComponent));
51089
+ _EmdhaAuthDialog_instances = new WeakSet(), _EmdhaAuthDialog_listenerTransactionStatus = function _EmdhaAuthDialog_listenerTransactionStatus() {
51090
+ var _this = this;
51091
+ this.emdhaService
51092
+ .checkTransactionStatus()
51093
+ .pipe(operators.takeUntil(this.destroy$))
51094
+ .subscribe(function (data) {
51095
+ _this.loading = true;
51096
+ __classPrivateFieldGet(_this, _EmdhaAuthDialog_instances, "m", _EmdhaAuthDialog_signDocument).call(_this).subscribe(function () {
51097
+ _this.loading = false;
51098
+ _this.close(true);
51099
+ }, function (error) {
51100
+ console.log(error);
51101
+ _this.loading = false;
51102
+ _this.toastrService.error('viewer.emdha.auth-error');
51103
+ _this.close(false);
51104
+ });
51105
+ }, function (error) {
51106
+ console.log(error);
51107
+ _this.toastrService.error('viewer.emdha.auth-error');
51108
+ _this.close(false);
51109
+ });
51110
+ }, _EmdhaAuthDialog_signDocument = function _EmdhaAuthDialog_signDocument() {
51111
+ var _this = this;
51112
+ return this.emdhaService.signDocument().pipe(operators.takeUntil(this.destroy$), operators.finalize(function () { return (_this.loading = false); }));
51113
+ };
51114
+ EmdhaAuthDialog.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: EmdhaAuthDialog, deps: [{ token: i0__namespace.Injector }, { token: EmdhaService }], target: i0__namespace.ɵɵFactoryTarget.Component });
51115
+ EmdhaAuthDialog.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: EmdhaAuthDialog, selector: "app-emdha-auth-dialog", usesInheritance: true, ngImport: i0__namespace, template: "<ndf-nuxeo-dialog\r\n dialogTitle=\"{{getDialogTitle | translate }}\"\r\n [loading]=\"loading\"\r\n>\r\n <ng-template #contentTemplate>\r\n <div class=\"nafath-container\">\r\n <ng-container *ngIf=\"!proccessingSign\">\r\n <div class=\"header\">\r\n <div class=\"nafath\">{{'viewer.emdha.nafath' | translate}}</div>\r\n <div class=\"nafath-sub\">\r\n {{'viewer.emdha.national single sign-on' | translate}}\r\n </div>\r\n </div>\r\n\r\n <form [formGroup]=\"emdhaForm\" *ngIf=\"!displayCode;else showDisplayCode\">\r\n <div class=\"flex\">\r\n <app-dynamic-form-textitem\r\n class=\"w-full py-10\"\r\n formControlName=\"idNumber\"\r\n [label]=\"'viewer.emdha.idNumber'\"\r\n [placeholder]=\"'viewer.emdha.idNumberHint'\"\r\n [preventSpace]=\"true\"\r\n ></app-dynamic-form-textitem>\r\n </div>\r\n\r\n <button\r\n class=\"cancelation-button confirmation-button\"\r\n [disabled]=\"emdhaForm?.invalid\"\r\n (click)=\"signerAuth()\"\r\n >\r\n <mat-icon svgIcon=\"icons:login\"></mat-icon>\r\n {{ 'viewer.emdha.login' | translate }}\r\n </button>\r\n </form>\r\n\r\n <ng-template #showDisplayCode>\r\n <div class=\"nafath-code-container py-10\">\r\n <div class=\"nafath-code\">{{displayCode}}</div>\r\n </div>\r\n </ng-template>\r\n </ng-container>\r\n </div>\r\n </ng-template>\r\n\r\n <ng-template #actionsTemplate let-dialog=\"dialog\"> </ng-template>\r\n</ndf-nuxeo-dialog>\r\n", styles: [":host{--nafath-color: #11998e}.nafath-container{padding-bottom:10px;min-height:150px}.header{text-align:var(--emdha-header-text-align, center)}.header .nafath{color:var(--emdha-header-nafath-color, var(--nafath-color));font-weight:var(--emdha-header-nafath-font-weight, 500);font-size:var(--emdha-header-nafath-font-size, 1.5rem);line-height:var(--emdha-header-nafath-line-height, 1.75rem);font-style:var(--emdha-header-nafath-font-style, normal)}.header .nafath-sub{font-weight:var(--emdha-header-nafath-sub-font-weight, 100);font-size:var(--emdha-header-nafath-sub-font-size, .85rem)}.nafath-code-container{display:flex;justify-content:center}.nafath-code-container .nafath-code{width:-moz-fit-content;width:fit-content;padding:10px 16px;border-radius:8px;text-align:var(--emdha-nafath-code-text-align, center);color:var(--emdha-nafath-code-color, #fff);background:var(--emdha-nafath-code-bg-color, var(--nafath-color));font-weight:var(--emdha-nafath-code-font-weight, 500);font-size:var(--emdha-nafath-code-font-size, 2rem)}::ng-deep .app-property-value .app-input-wrapper label{color:unset!important}::ng-deep .app-property-value .app-input-wrapper label .text-danger{color:red}::ng-deep .app-property-value .app-input-wrapper .form-control{width:100%;background-color:unset!important;border-radius:4px!important}::ng-deep .app-property-value .input-filled{border-color:var(--emdha-dialog-input-border-color, var(--nafath-color))!important}::ng-deep .emdha-auth-dialog-container .ndf-dialog-wrapper .dialog-header{color:var(--emdha-dialog-header-color, var(--nafath-color))!important}::ng-deep .emdha-auth-dialog-container .ndf-dialog-wrapper .dialog-body{padding-bottom:unset!important}::ng-deep .emdha-auth-dialog-container .ndf-dialog-wrapper>div:last-child{padding-top:unset!important;display:block!important}::ng-deep .emdha-auth-dialog-container .cancelation-button{width:100%!important;padding-top:1px;display:flex!important;height:35px!important;max-height:35px!important;min-height:35px!important;min-width:80px!important;align-items:center!important;justify-content:center!important;grid-gap:.25rem!important;gap:.25rem!important;border-radius:4px!important;padding-left:1rem!important;padding-right:1rem!important;font-size:.875rem!important;font-weight:400!important;line-height:1.5rem!important;border:1px solid #aaa!important}::ng-deep .emdha-auth-dialog-container .confirmation-button{width:100%!important;border:unset!important;background-color:var(--emdha-header-login-bg-color, var(--nafath-color))!important;color:var(--emdha-header-login-color, #fff)!important}::ng-deep .emdha-auth-dialog-container .confirmation-button:disabled{opacity:.5}\n"], components: [{ type: NdfNuxeoDialog, selector: "ndf-nuxeo-dialog", inputs: ["dialogTitle", "subTitle", "panelClass", "bodyClass", "loaderMode"] }, { type: DynamicFormTextItemComponent, selector: "app-dynamic-form-textitem", inputs: ["autoComplete", "nativeAutoComplete", "autoComplete_pageProvider", "autoComplete_propertyName", "autoComplete_propertyKey", "autoCompleteValueKey", "autoCompleteType", "tenantId", "emitFullObject", "outsideParams", "type", "property", "label", "editable", "placeholder", "disabled", "displayEmpty", "preventSpace", "id", "maxCharsNum"] }, { type: i2__namespace$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }], directives: [{ type: i4__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2__namespace$4.ɵNgNoValidate, selector: "form:not([ngNoForm]):not([ngNativeValidate])" }, { type: i2__namespace$4.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2__namespace$4.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i2__namespace$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2__namespace$4.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "translate": i1__namespace.TranslatePipe } });
51116
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: EmdhaAuthDialog, decorators: [{
51117
+ type: i0.Component,
51118
+ args: [{
51119
+ selector: 'app-emdha-auth-dialog',
51120
+ templateUrl: './emdha-auth.dialog.html',
51121
+ styleUrls: ['./emdha-auth.dialog.scss'],
51122
+ }]
51123
+ }], ctorParameters: function () { return [{ type: i0__namespace.Injector }, { type: EmdhaService }]; } });
51124
+
51125
+ var _SignaturesService_instances, _SignaturesService_userSignatures, _SignaturesService_trackedSignatures, _SignaturesService_signAlreadyDrawed, _SignaturesService_selectedSign, _SignaturesService_createUserSignature, _SignaturesService_exctractNotRepeatedSign, _SignaturesService_findSignatureToDelete, _SignaturesService_findSignatureToUpdate, _SignaturesService_startConstructingSignOptions, _SignaturesService_getTitle, _SignaturesService_constructAndDrawSignature, _SignaturesService_checkIfHasSignatures, _SignaturesService_registerAuditLog;
51126
+ exports.SignatureType = void 0;
51127
+ (function (SignatureType) {
51128
+ SignatureType["Tron"] = "tron";
51129
+ SignatureType["Emdha"] = "emdha";
51130
+ })(exports.SignatureType || (exports.SignatureType = {}));
51131
+ exports.InsertSingPosition = void 0;
51132
+ (function (InsertSingPosition) {
51133
+ InsertSingPosition["CurrentPage"] = "currentPage";
51134
+ InsertSingPosition["FirstPage"] = "firstPage";
51135
+ InsertSingPosition["LastPage"] = "lastPage";
51136
+ InsertSingPosition["FirstLastPage"] = "firstLast";
51137
+ InsertSingPosition["AllPages"] = "allPages";
51138
+ })(exports.InsertSingPosition || (exports.InsertSingPosition = {}));
51139
+ var SignaturesService = /** @class */ (function (_super) {
51140
+ __extends(SignaturesService, _super);
51141
+ function SignaturesService(injector, emdhaService, pdftronService, documentsService) {
51142
+ var _this = _super.call(this, injector) || this;
51143
+ _this.emdhaService = emdhaService;
51144
+ _this.pdftronService = pdftronService;
51145
+ _this.documentsService = documentsService;
51146
+ _SignaturesService_instances.add(_this);
51147
+ _SignaturesService_userSignatures.set(_this, []);
51148
+ _SignaturesService_trackedSignatures.set(_this, []);
51149
+ _SignaturesService_signAlreadyDrawed.set(_this, false);
51150
+ _SignaturesService_selectedSign.set(_this, void 0);
51151
+ _this.hasSignatures$ = new rxjs.BehaviorSubject(false);
51152
+ _this.operations = {
51153
+ get: 'AC_UA_UserSignature_GetAsBase64',
51154
+ create: 'AC_UA_DMS_User_Signature_Create',
51155
+ delete: 'AC_UA_DMS_User_Signature_Delete',
51156
+ lock: 'AC_UA_DMS_Document_Lock',
51157
+ unlock: 'AC_UA_DMS_Document_Unlock',
51158
+ audit: 'AC_AU_RegisterAuditLog',
51159
+ createVersion: 'Document.CreateVersion'
51160
+ };
51161
+ return _this;
51162
+ }
51163
+ SignaturesService.prototype.lockDocument = function (mode, docId, headers) {
51164
+ if (headers === void 0) { headers = {}; }
51165
+ return this.automation({
51166
+ operation: this.operations.lock,
51167
+ input: docId,
51168
+ params: { mode: mode },
51169
+ headers: headers
51170
+ });
51171
+ };
51172
+ SignaturesService.prototype.unlockDocument = function (docId, headers) {
51173
+ if (headers === void 0) { headers = {}; }
51174
+ return this.automation({
51175
+ operation: this.operations.unlock,
51176
+ input: docId,
51177
+ headers: headers
51178
+ });
51179
+ };
51180
+ SignaturesService.prototype.getLockOwner = function (userId) {
51181
+ return this.request("user/" + userId);
51182
+ };
51183
+ SignaturesService.prototype.getUserSignatures = function (forceFetch) {
51184
+ var _this = this;
51185
+ if (forceFetch === void 0) { forceFetch = false; }
51186
+ if (!forceFetch && __classPrivateFieldGet(this, _SignaturesService_userSignatures, "f").length > 0) {
51187
+ return rxjs.of(__classPrivateFieldGet(this, _SignaturesService_userSignatures, "f"));
51188
+ }
51189
+ else {
51190
+ __classPrivateFieldSet(this, _SignaturesService_userSignatures, [], "f");
51191
+ }
51192
+ return this.automation({
51193
+ operation: this.operations.get,
51194
+ headers: { 'X-NXproperties': '*' }
51195
+ }).pipe(operators.take(1), operators.map(function (data) {
51196
+ var base64sign = '';
51197
+ var notRepeatedSign = __classPrivateFieldGet(_this, _SignaturesService_instances, "m", _SignaturesService_exctractNotRepeatedSign).call(_this, data);
51198
+ notRepeatedSign.map(function (sign, i) {
51199
+ if (sign['file:content']) {
51200
+ base64sign =
51201
+ 'data:' +
51202
+ (sign['file:content']['mime-type'] ? sign['file:content']['mime-type'] : 'image/png') +
51203
+ ';base64,' +
51204
+ sign['file:content']['data'];
51205
+ __classPrivateFieldGet(_this, _SignaturesService_userSignatures, "f").push({
51206
+ id: i,
51207
+ image: base64sign,
51208
+ name: sign.name || sign.title
51209
+ });
51210
+ }
51211
+ });
51212
+ return __classPrivateFieldGet(_this, _SignaturesService_userSignatures, "f");
51213
+ }));
51214
+ };
51215
+ SignaturesService.prototype.addUserSignature = function (file) {
51216
+ var _this = this;
51217
+ return this.documentsService.uploadBatch([file]).pipe(operators.take(1), operators.switchMap(function (batch) { return __classPrivateFieldGet(_this, _SignaturesService_instances, "m", _SignaturesService_createUserSignature).call(_this, batch).pipe(operators.take(1)); }), operators.switchMap(function () { return _this.getUserSignatures(true); }));
51218
+ };
51219
+ SignaturesService.prototype.deleteUserSignature = function (sign) {
51220
+ var _this = this;
51221
+ return this.automation({
51222
+ operation: this.operations.delete,
51223
+ context: {
51224
+ userSignatureName: sign.name
51225
+ }
51226
+ }).pipe(operators.map(function () {
51227
+ __classPrivateFieldGet(_this, _SignaturesService_userSignatures, "f").splice(sign.id, 1);
51228
+ return __classPrivateFieldGet(_this, _SignaturesService_userSignatures, "f");
51229
+ }));
51230
+ };
51231
+ SignaturesService.prototype.applySignToDocument = function (sign, insertPosition) {
51232
+ __classPrivateFieldSet(this, _SignaturesService_selectedSign, sign, "f");
51233
+ if (__classPrivateFieldGet(this, _SignaturesService_signAlreadyDrawed, "f")) {
51234
+ this.pdftronService.instance.annotManager.deleteAnnotations(__classPrivateFieldGet(this, _SignaturesService_trackedSignatures, "f"));
51235
+ __classPrivateFieldGet(this, _SignaturesService_instances, "m", _SignaturesService_startConstructingSignOptions).call(this, sign, insertPosition, false);
51236
+ }
51237
+ else {
51238
+ __classPrivateFieldGet(this, _SignaturesService_instances, "m", _SignaturesService_startConstructingSignOptions).call(this, sign, insertPosition, true);
51239
+ }
51240
+ __classPrivateFieldSet(this, _SignaturesService_signAlreadyDrawed, true, "f");
51241
+ __classPrivateFieldGet(this, _SignaturesService_instances, "m", _SignaturesService_checkIfHasSignatures).call(this);
51242
+ };
51243
+ // client should lock/unlock the document to customize header if need
51244
+ SignaturesService.prototype.saveSingFile = function (signatureType, document, file, extraHeaders, useVersionCustomParam, updateDocument) {
51245
+ var _this = this;
51246
+ if (extraHeaders === void 0) { extraHeaders = {}; }
51247
+ if (useVersionCustomParam === void 0) { useVersionCustomParam = true; }
51248
+ if (updateDocument === void 0) { updateDocument = true; }
51249
+ // const signInfo = this.pdftronService.getSignatureAnnotaionsInfo(
51250
+ // this.#trackedSignatures,
51251
+ // );
51252
+ if (__classPrivateFieldGet(this, _SignaturesService_trackedSignatures, "f").length <= 0) {
51253
+ return rxjs.throwError(function () { return new Error('No signature to save'); });
51254
+ }
51255
+ if (signatureType === exports.SignatureType.Emdha) {
51256
+ var pdfYCoordinate = 792;
51257
+ var x1 = __classPrivateFieldGet(this, _SignaturesService_trackedSignatures, "f")[0].X;
51258
+ var y1 = pdfYCoordinate -
51259
+ (__classPrivateFieldGet(this, _SignaturesService_trackedSignatures, "f")[0].Y + __classPrivateFieldGet(this, _SignaturesService_trackedSignatures, "f")[0].Height < pdfYCoordinate
51260
+ ? __classPrivateFieldGet(this, _SignaturesService_trackedSignatures, "f")[0].Y + __classPrivateFieldGet(this, _SignaturesService_trackedSignatures, "f")[0].Height
51261
+ : __classPrivateFieldGet(this, _SignaturesService_trackedSignatures, "f")[0].Y);
51262
+ var x2 = x1 + __classPrivateFieldGet(this, _SignaturesService_trackedSignatures, "f")[0].Width;
51263
+ var y2 = y1 + __classPrivateFieldGet(this, _SignaturesService_trackedSignatures, "f")[0].Height;
51264
+ var emdhaPayload = {
51265
+ uid: document.uid,
51266
+ pageNumber: this.pdftronService.instance.docViewer.getCurrentPage(),
51267
+ pageCoordinates: Math.floor(x1) + "," + Math.floor(y1) + "," + Math.floor(x2) + "," + Math.floor(y2),
51268
+ signImage: __classPrivateFieldGet(this, _SignaturesService_selectedSign, "f").image
51269
+ };
51270
+ return this.emdhaService.start(EmdhaAuthDialog, emdhaPayload);
51271
+ }
51272
+ else {
51273
+ return this.documentsService.uploadBatch([file], extraHeaders).pipe(operators.take(1), operators.switchMap(function (batch) {
51274
+ var props = { 'file:content': batch[0].blob };
51275
+ var versionCustomParam = {
51276
+ increment: 'major',
51277
+ saveDocument: true
51278
+ };
51279
+ return _this.documentsService
51280
+ .createVersion(document.uid, 'minor', _this.operations.createVersion, useVersionCustomParam ? versionCustomParam : null)
51281
+ .pipe(operators.take(1), operators.switchMap(function () {
51282
+ if (!updateDocument)
51283
+ return rxjs.of(batch);
51284
+ return _this.documentsService.updateDocument(Object.assign(Object.assign({}, document), { properties: props }));
51285
+ }), operators.tap(function () {
51286
+ _this.documentsService.reFetch.next(true);
51287
+ if (_this.operations.audit) {
51288
+ __classPrivateFieldGet(_this, _SignaturesService_instances, "m", _SignaturesService_registerAuditLog).call(_this, document.uid, 'sign');
51289
+ }
51290
+ }), operators.take(1));
51291
+ }));
51292
+ }
51293
+ };
51294
+ SignaturesService.prototype.onTrackingSignature = function (signatures) {
51295
+ var _this = this;
51296
+ console.log('onTrackingSignature', signatures);
51297
+ if (signatures.action === 'delete') {
51298
+ signatures.anotations.map(function (anot) {
51299
+ __classPrivateFieldGet(_this, _SignaturesService_instances, "m", _SignaturesService_findSignatureToDelete).call(_this, anot); // delete old signature with its old position
51300
+ });
51301
+ }
51302
+ else if (signatures.action === 'modify') {
51303
+ if (signatures.anotations[0]['applyMovingToAllPages']) {
51304
+ __classPrivateFieldGet(this, _SignaturesService_trackedSignatures, "f").map(function (sign) {
51305
+ sign.X = signatures.anotations[0]['X'];
51306
+ sign.Y = signatures.anotations[0]['Y'];
51307
+ _this.pdftronService.instance.annotManager.redrawAnnotation(sign);
51308
+ });
51309
+ }
51310
+ else {
51311
+ __classPrivateFieldGet(this, _SignaturesService_instances, "m", _SignaturesService_findSignatureToUpdate).call(this, signatures.anotations[0]); // delete old signature with its old position
51312
+ __classPrivateFieldGet(this, _SignaturesService_trackedSignatures, "f").push(signatures.anotations[0]); // add new signature with its new position
51313
+ }
51314
+ }
51315
+ else if (signatures.action === 'add') {
51316
+ __classPrivateFieldGet(this, _SignaturesService_trackedSignatures, "f").push(signatures.anotations[0]);
51317
+ }
51318
+ __classPrivateFieldGet(this, _SignaturesService_instances, "m", _SignaturesService_checkIfHasSignatures).call(this);
51319
+ };
51320
+ SignaturesService.prototype.reset = function () {
51321
+ __classPrivateFieldSet(this, _SignaturesService_trackedSignatures, [], "f");
51322
+ __classPrivateFieldSet(this, _SignaturesService_signAlreadyDrawed, false, "f");
51323
+ __classPrivateFieldGet(this, _SignaturesService_instances, "m", _SignaturesService_checkIfHasSignatures).call(this);
51324
+ };
51325
+ SignaturesService.prototype.setCustomToken = function (token) {
51326
+ this.emdhaService.customToken = token;
51327
+ };
51328
+ return SignaturesService;
51329
+ }(BaseService));
51330
+ _SignaturesService_userSignatures = new WeakMap(), _SignaturesService_trackedSignatures = new WeakMap(), _SignaturesService_signAlreadyDrawed = new WeakMap(), _SignaturesService_selectedSign = new WeakMap(), _SignaturesService_instances = new WeakSet(), _SignaturesService_createUserSignature = function _SignaturesService_createUserSignature(batch) {
51331
+ return this.customAutomation({
51332
+ operation: this.operations.create,
51333
+ context: {
51334
+ signature: {
51335
+ 'file:content': {
51336
+ 'upload-batch': batch[0]['blob']['upload-batch'],
51337
+ 'upload-fileId': batch[0]['blob']['upload-fileId']
51338
+ }
51339
+ }
51340
+ }
51341
+ });
51342
+ }, _SignaturesService_exctractNotRepeatedSign = function _SignaturesService_exctractNotRepeatedSign(newSignatures) {
51343
+ var _this = this;
51344
+ var notRepeated = newSignatures.filter(function (sign) { return !__classPrivateFieldGet(_this, _SignaturesService_userSignatures, "f").some(function (s) { return s.name === sign.title; }); });
51345
+ return notRepeated;
51346
+ }, _SignaturesService_findSignatureToDelete = function _SignaturesService_findSignatureToDelete(signature) {
51347
+ __classPrivateFieldSet(this, _SignaturesService_trackedSignatures, __classPrivateFieldGet(this, _SignaturesService_trackedSignatures, "f").filter(function (sign) {
51348
+ return (sign.PageNumber !== signature.PageNumber ||
51349
+ sign.ImageData !== signature.ImageData ||
51350
+ (sign.X !== signature.X && sign.Y !== signature.Y));
51351
+ }), "f");
51352
+ }, _SignaturesService_findSignatureToUpdate = function _SignaturesService_findSignatureToUpdate(signature) {
51353
+ __classPrivateFieldSet(this, _SignaturesService_trackedSignatures, __classPrivateFieldGet(this, _SignaturesService_trackedSignatures, "f").filter(function (sign) {
51354
+ return sign.PageNumber !== signature.PageNumber || sign.ImageData !== signature.ImageData;
51355
+ }), "f");
51356
+ }, _SignaturesService_startConstructingSignOptions = function _SignaturesService_startConstructingSignOptions(sign, insertPosition, addMoveButton) {
51357
+ var _this = this;
51358
+ this.pdftronService.instance.annotManager.setReadOnly(false);
51359
+ if (addMoveButton) {
51360
+ this.pdftronService.instance.annotationPopup.add({
51361
+ type: 'actionButton',
51362
+ img: '<svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" fill="currentColor" class="bi bi-arrows-move" viewBox="0 0 16 16"><path fill-rule="evenodd" d="M7.646.146a.5.5 0 0 1 .708 0l2 2a.5.5 0 0 1-.708.708L8.5 1.707V5.5a.5.5 0 0 1-1 0V1.707L6.354 2.854a.5.5 0 1 1-.708-.708zM8 10a.5.5 0 0 1 .5.5v3.793l1.146-1.147a.5.5 0 0 1 .708.708l-2 2a.5.5 0 0 1-.708 0l-2-2a.5.5 0 0 1 .708-.708L7.5 14.293V10.5A.5.5 0 0 1 8 10M.146 8.354a.5.5 0 0 1 0-.708l2-2a.5.5 0 1 1 .708.708L1.707 7.5H5.5a.5.5 0 0 1 0 1H1.707l1.147 1.146a.5.5 0 0 1-.708.708zM10 8a.5.5 0 0 1 .5-.5h3.793l-1.147-1.146a.5.5 0 0 1 .708-.708l2 2a.5.5 0 0 1 0 .708l-2 2a.5.5 0 0 1-.708-.708L14.293 8.5H10.5A.5.5 0 0 1 10 8"/></svg>',
51363
+ title: this.translateService.instant('viewer.Sync movement with all pages'),
51364
+ onClick: function () {
51365
+ var selectAnot = _this.pdftronService.instance.annotManager.getSelectedAnnotations();
51366
+ selectAnot[0]['applyMovingToAllPages'] = selectAnot[0]['applyMovingToAllPages'] ? false : true;
51367
+ _this.pdftronService.instance.annotManager.setNoteContents(selectAnot[0], __classPrivateFieldGet(_this, _SignaturesService_instances, "m", _SignaturesService_getTitle).call(_this, selectAnot[0]));
51368
+ console.log(selectAnot);
51369
+ }
51370
+ });
51371
+ this.pdftronService.instance.disableElements([
51372
+ 'toolbarGroup-Shapes',
51373
+ 'toolbarGroup-Edit',
51374
+ 'toolbarGroup-Insert',
51375
+ 'toolbarGroup-Annotate',
51376
+ 'linkButton',
51377
+ 'annotationStyleEditButton',
51378
+ 'annotationCommentButton'
51379
+ ]);
51380
+ }
51381
+ var pageCount = this.pdftronService.instance.docViewer.getPageCount();
51382
+ if (pageCount === 1 ||
51383
+ (pageCount > 1 && insertPosition === exports.InsertSingPosition.FirstPage) ||
51384
+ (pageCount > 1 && insertPosition === exports.InsertSingPosition.LastPage)) {
51385
+ var page = pageCount > 1 && insertPosition === exports.InsertSingPosition.LastPage ? pageCount : 1;
51386
+ __classPrivateFieldGet(this, _SignaturesService_instances, "m", _SignaturesService_constructAndDrawSignature).call(this, page, sign.image);
51387
+ }
51388
+ else if (insertPosition === exports.InsertSingPosition.FirstLastPage) {
51389
+ __classPrivateFieldGet(this, _SignaturesService_instances, "m", _SignaturesService_constructAndDrawSignature).call(this, 1, sign.image);
51390
+ __classPrivateFieldGet(this, _SignaturesService_instances, "m", _SignaturesService_constructAndDrawSignature).call(this, pageCount, sign.image);
51391
+ }
51392
+ else if (insertPosition === exports.InsertSingPosition.CurrentPage) {
51393
+ var currentPage = this.pdftronService.instance.docViewer.getCurrentPage();
51394
+ __classPrivateFieldGet(this, _SignaturesService_instances, "m", _SignaturesService_constructAndDrawSignature).call(this, currentPage, sign.image);
51395
+ }
51396
+ else if (insertPosition === exports.InsertSingPosition.AllPages) {
51397
+ for (var pageNum = 1; pageNum < pageCount + 1; pageNum++) {
51398
+ __classPrivateFieldGet(this, _SignaturesService_instances, "m", _SignaturesService_constructAndDrawSignature).call(this, pageNum, sign.image);
51399
+ }
51400
+ }
51401
+ }, _SignaturesService_getTitle = function _SignaturesService_getTitle(selectAnot) {
51402
+ if (selectAnot && selectAnot['applyMovingToAllPages']) {
51403
+ return this.translateService.instant('viewer.Motion is synchronized with all pages');
51404
+ }
51405
+ else {
51406
+ return this.translateService.instant('viewer.Motion is not synchronized with all pages');
51407
+ }
51408
+ }, _SignaturesService_constructAndDrawSignature = function _SignaturesService_constructAndDrawSignature(page, signImg) {
51409
+ var signatureAnnot = new this.pdftronService.instance.Annotations.StampAnnotation();
51410
+ signatureAnnot.PageNumber = page;
51411
+ var pageHeight = this.pdftronService.instance.docViewer.getPageHeight(page);
51412
+ var pageWidth = this.pdftronService.instance.docViewer.getPageWidth(page);
51413
+ signatureAnnot.X = pageWidth - 180;
51414
+ signatureAnnot.Y = pageHeight - 110;
51415
+ signatureAnnot.Width = 140;
51416
+ signatureAnnot.Height = 60;
51417
+ var keepAsSVG = false;
51418
+ signatureAnnot.setImageData(signImg, keepAsSVG);
51419
+ signatureAnnot.Author = this.pdftronService.instance.annotManager.getCurrentUser();
51420
+ this.pdftronService.instance.annotManager.addAnnotation(signatureAnnot);
51421
+ this.pdftronService.instance.annotManager.redrawAnnotation(signatureAnnot);
51422
+ }, _SignaturesService_checkIfHasSignatures = function _SignaturesService_checkIfHasSignatures() {
51423
+ this.hasSignatures$.next(__classPrivateFieldGet(this, _SignaturesService_trackedSignatures, "f").length > 0);
51424
+ }, _SignaturesService_registerAuditLog = function _SignaturesService_registerAuditLog(docId, eventType) {
51425
+ return this.customAutomation({
51426
+ operation: this.operations.audit,
51427
+ input: docId,
51428
+ params: { event: eventType }
51429
+ });
51430
+ };
51431
+ SignaturesService.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: SignaturesService, deps: [{ token: i0__namespace.Injector }, { token: EmdhaService }, { token: PdftronService }, { token: DocumentsService }], target: i0__namespace.ɵɵFactoryTarget.Injectable });
51432
+ SignaturesService.ɵprov = i0__namespace.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: SignaturesService, providedIn: 'root' });
51433
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: SignaturesService, decorators: [{
51434
+ type: i0.Injectable,
51435
+ args: [{ providedIn: 'root' }]
51436
+ }], ctorParameters: function () { return [{ type: i0__namespace.Injector }, { type: EmdhaService }, { type: PdftronService }, { type: DocumentsService }]; } });
51437
+
51438
+ var _NdfSignaturePanelComponent_instances, _NdfSignaturePanelComponent_loadSignatures;
51439
+ var NdfSignaturePanelComponent = /** @class */ (function (_super) {
51440
+ __extends(NdfSignaturePanelComponent, _super);
51441
+ function NdfSignaturePanelComponent(injector, signaturesService, dialog) {
51442
+ var _this = _super.call(this, injector) || this;
51443
+ _this.signaturesService = signaturesService;
51444
+ _this.dialog = dialog;
51445
+ _NdfSignaturePanelComponent_instances.add(_this);
51446
+ _this.allowedSignTypes = 'image/png,image/jpg,image/jpeg';
51447
+ _this.svgDeleteIcon = 'icons:delete_elements';
51448
+ _this.enableMultiSign = false;
51449
+ _this.userSignatures = [];
51450
+ _this.signaturePosition = [
51451
+ { label: 'viewer.current_page_only', id: exports.InsertSingPosition.CurrentPage },
51452
+ { label: 'viewer.first_page_only', id: exports.InsertSingPosition.FirstPage },
51453
+ { label: 'viewer.last_page_only', id: exports.InsertSingPosition.LastPage }
51454
+ ];
51455
+ _this.signaturesService.reset();
51456
+ return _this;
51457
+ }
51458
+ NdfSignaturePanelComponent.prototype.ngOnInit = function () {
51459
+ var _c;
51460
+ if (this.enableMultiSign) {
51461
+ (_c = this.signaturePosition).push.apply(_c, [
51462
+ { label: 'viewer.first_last_pages', id: exports.InsertSingPosition.FirstLastPage },
51463
+ { label: 'viewer.all_pages', id: exports.InsertSingPosition.AllPages },
51464
+ ]);
51465
+ }
51466
+ __classPrivateFieldGet(this, _NdfSignaturePanelComponent_instances, "m", _NdfSignaturePanelComponent_loadSignatures).call(this);
51467
+ };
51468
+ NdfSignaturePanelComponent.prototype.addNewSign = function () {
51469
+ this.signatureUploadInput.nativeElement.click();
51470
+ };
51471
+ NdfSignaturePanelComponent.prototype.applySignToDocument = function () {
51472
+ if (!this.selectedSign || !this.selectedPosition)
51473
+ return;
51474
+ this.signaturesService.applySignToDocument(this.selectedSign, this.selectedPosition);
51475
+ };
51476
+ NdfSignaturePanelComponent.prototype.saveSignature = function (event) {
51477
+ var _this = this;
51478
+ if (!this.allowedSignTypes.split(',').includes(event.target.files[0].type)) {
51479
+ this.toastrService.error('viewer.notAllowedType');
51480
+ }
51481
+ else {
51482
+ this.loading = true;
51483
+ this.signaturesService
51484
+ .addUserSignature(event.target.files[0])
51485
+ .pipe(operators.takeUntil(this.destroy$), operators.finalize(function () {
51486
+ _this.loading = false;
51487
+ var input = event.target;
51488
+ input.value = null;
51489
+ }))
51490
+ .subscribe(function (data) {
51491
+ _this.userSignatures = data;
51492
+ _this.toastrService.success('viewer.sing_created_success');
51493
+ });
51494
+ }
51495
+ };
51496
+ NdfSignaturePanelComponent.prototype.selectSignature = function (sign) {
51497
+ this.selectedSign = sign;
51498
+ };
51499
+ NdfSignaturePanelComponent.prototype.deleteSignature = function (sign) {
51500
+ var _this = this;
51501
+ var _a, _b;
51502
+ this.dialog.open(((_a = this.customConfirmationDialog) === null || _a === void 0 ? void 0 : _a.component) || ConfirmationDialogComponent, ((_b = this.customConfirmationDialog) === null || _b === void 0 ? void 0 : _b.config) || {
51503
+ width: "510px",
51504
+ data: {
51505
+ title: this.translateService.instant("confirmDialog.confirm"),
51506
+ message: this.translateService.instant('viewer.confirm_sign_delete'),
51507
+ confirmButton: "viewer.sing_deleted_success",
51508
+ cancelButton: "BUTTONS.Cancel",
51509
+ },
51510
+ disableClose: true,
51511
+ }).afterClosed().subscribe(function (data) {
51512
+ if (data) {
51513
+ _this.loading = true;
51514
+ _this.signaturesService.deleteUserSignature(sign).pipe(operators.takeUntil(_this.destroy$), operators.finalize(function () { return (_this.loading = false); })).subscribe(function (data) {
51515
+ _this.userSignatures = data;
51516
+ _this.toastrService.success('viewer.sing_deleted_success');
51517
+ });
51518
+ }
51519
+ });
51520
+ };
51521
+ return NdfSignaturePanelComponent;
51522
+ }(BaseComponent));
51523
+ _NdfSignaturePanelComponent_instances = new WeakSet(), _NdfSignaturePanelComponent_loadSignatures = function _NdfSignaturePanelComponent_loadSignatures() {
51524
+ var _this = this;
51525
+ this.loading = true;
51526
+ this.signaturesService
51527
+ .getUserSignatures()
51528
+ .pipe(operators.finalize(function () { return (_this.loading = false); }))
51529
+ .subscribe(function (data) {
51530
+ _this.userSignatures = data;
51531
+ });
51532
+ };
51533
+ NdfSignaturePanelComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NdfSignaturePanelComponent, deps: [{ token: i0__namespace.Injector }, { token: SignaturesService }, { token: i1__namespace$3.MatDialog }], target: i0__namespace.ɵɵFactoryTarget.Component });
51534
+ NdfSignaturePanelComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NdfSignaturePanelComponent, selector: "ndf-signature-panel", inputs: { allowedSignTypes: "allowedSignTypes", svgDeleteIcon: "svgDeleteIcon", enableMultiSign: "enableMultiSign", customConfirmationDialog: "customConfirmationDialog" }, queries: [{ propertyName: "addTemplate", first: true, predicate: ["addTemplate"], descendants: true }, { propertyName: "appendSigntoDoc", first: true, predicate: ["appendSigntoDoc"], descendants: true }], viewQueries: [{ propertyName: "signatureUploadInput", first: true, predicate: ["signatureUploadInput"], descendants: true }], usesInheritance: true, ngImport: i0__namespace, template: "<input\r\n type=\"file\"\r\n class=\"hidden\"\r\n #signatureUploadInput\r\n [accept]=\"allowedSignTypes\"\r\n (change)=\"saveSignature($event)\"\r\n/>\r\n<div class=\"ndf-signature-panel\">\r\n <div class=\"selecting-sign-iner-eraper\">\r\n <div class=\"section-title flex justify-between\">\r\n {{ \"viewer.choose_signature\" | translate }}\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n addTemplate;\r\n context: {\r\n action: addNewSign.bind(this),\r\n loading: loading,\r\n signaturesLength: userSignatures?.length\r\n }\r\n \"\r\n ></ng-container>\r\n </div>\r\n\r\n <mat-progress-bar\r\n *ngIf=\"loading\"\r\n [mode]=\"'indeterminate'\"\r\n class=\"mt-1\"\r\n ></mat-progress-bar>\r\n\r\n <ng-container *ngIf=\"!loading\">\r\n <ng-container *ngIf=\"userSignatures?.length; else showNoSignatures\">\r\n <div class=\"sign-imges mt-6\">\r\n <span\r\n *ngFor=\"let sign of userSignatures\"\r\n class=\"single-sign-img-container\"\r\n [ngClass]=\"{\r\n selected_sign: sign.id === selectedSign?.id\r\n }\"\r\n >\r\n <img [src]=\"sign.image\" (click)=\"selectSignature(sign)\" />\r\n <mat-icon\r\n [svgIcon]=\"svgDeleteIcon\"\r\n class=\"delete-sign\"\r\n (click)=\"deleteSignature(sign)\"\r\n ></mat-icon>\r\n </span>\r\n </div>\r\n <div class=\"sign-options mt-4\">\r\n <label class=\"sign-position\">\r\n {{ \"viewer.sign_position\" | translate }}\r\n </label>\r\n <mat-radio-group\r\n class=\"opsition-options-wraper\"\r\n [(ngModel)]=\"selectedPosition\"\r\n >\r\n <mat-radio-button\r\n *ngFor=\"let opt of signaturePosition\"\r\n class=\"single-option\"\r\n [value]=\"opt.id\"\r\n >{{ opt.label | translate }}</mat-radio-button\r\n >\r\n </mat-radio-group>\r\n </div>\r\n\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n appendSigntoDoc;\r\n context: {\r\n action: applySignToDocument.bind(this),\r\n disabled: !selectedPosition || !selectedSign || loading\r\n }\r\n \"\r\n ></ng-container>\r\n </ng-container>\r\n\r\n <ng-template #showNoSignatures>\r\n <app-no-data-found\r\n message=\"viewer.no_sign_for_certificate\"\r\n ></app-no-data-found>\r\n </ng-template>\r\n </ng-container>\r\n </div>\r\n</div>\r\n", styles: [".ndf-signature-panel{overflow-x:hidden}.sign-imges{display:flex;grid-gap:10px;gap:10px;text-align:center;overflow-x:auto;height:100px;align-items:center}.sign-imges .single-sign-img-container{min-width:100px;width:100px;height:65px;box-shadow:0 1px 4px -1px #1c345442;cursor:pointer;position:relative}.sign-imges .single-sign-img-container img{height:100%;width:100%;padding:5px}.sign-imges .single-sign-img-container img:hover{transform:scale(1.1)}.sign-imges .single-sign-img-container.selected_sign{box-shadow:none;border:1px solid var(--selected-sign-border-color, #ddd)}.sign-imges .single-sign-img-container .delete-sign{position:absolute;top:-8px;left:0;border-radius:50%;padding:3px;color:var(--delete-sign-color, red);background:var(--delete-sign-bg-color, #ddd);cursor:pointer}.sign-imges .single-sign-img-container .delete-sign:hover{transform:scale(1.1)}mat-radio-button{display:block}::ng-deep .delete-sign.mat-icon svg{width:16px!important;height:16px!important}\n"], components: [{ type: i4__namespace$3.MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "mode", "value", "bufferValue"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }, { type: i2__namespace$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { type: i2__namespace$5.MatRadioButton, selector: "mat-radio-button", inputs: ["disableRipple", "tabIndex"], exportAs: ["matRadioButton"] }, { type: NoDataFoundComponent, selector: "app-no-data-found", inputs: ["message", "width", "height"] }], directives: [{ type: i4__namespace$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i4__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4__namespace$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4__namespace$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2__namespace$5.MatRadioGroup, selector: "mat-radio-group", exportAs: ["matRadioGroup"] }, { type: i2__namespace$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2__namespace$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }], pipes: { "translate": i1__namespace.TranslatePipe } });
51535
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NdfSignaturePanelComponent, decorators: [{
51536
+ type: i0.Component,
51537
+ args: [{
51538
+ selector: 'ndf-signature-panel',
51539
+ templateUrl: './ndf-signature-panel.component.html',
51540
+ styleUrls: ['./ndf-signature-panel.component.scss'],
51541
+ }]
51542
+ }], ctorParameters: function () { return [{ type: i0__namespace.Injector }, { type: SignaturesService }, { type: i1__namespace$3.MatDialog }]; }, propDecorators: { addTemplate: [{
51543
+ type: i0.ContentChild,
51544
+ args: ['addTemplate']
51545
+ }], appendSigntoDoc: [{
51546
+ type: i0.ContentChild,
51547
+ args: ['appendSigntoDoc']
51548
+ }], signatureUploadInput: [{
51549
+ type: i0.ViewChild,
51550
+ args: ['signatureUploadInput']
51551
+ }], allowedSignTypes: [{
51552
+ type: i0.Input
51553
+ }], svgDeleteIcon: [{
51554
+ type: i0.Input
51555
+ }], enableMultiSign: [{
51556
+ type: i0.Input
51557
+ }], customConfirmationDialog: [{
51558
+ type: i0.Input
51559
+ }] } });
51560
+
51561
+ var NdfSignaturesModule = /** @class */ (function () {
51562
+ function NdfSignaturesModule() {
51563
+ }
51564
+ return NdfSignaturesModule;
51565
+ }());
51566
+ NdfSignaturesModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NdfSignaturesModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
51567
+ NdfSignaturesModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NdfSignaturesModule, declarations: [NdfSignaturePanelComponent,
51568
+ EmdhaAuthDialog], imports: [i4.CommonModule,
51569
+ i1.TranslateModule,
51570
+ i2.FormsModule,
51571
+ i2.ReactiveFormsModule,
51572
+ i4$3.MatProgressBarModule,
51573
+ i2$2.MatIconModule,
51574
+ i2$5.MatRadioModule,
51575
+ i2$2.MatIconModule,
51576
+ NoDataModule,
51577
+ DynamicFormModule,
51578
+ NuxeoDialogModule], exports: [NdfSignaturePanelComponent,
51579
+ EmdhaAuthDialog] });
51580
+ NdfSignaturesModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NdfSignaturesModule, imports: [[
51581
+ i4.CommonModule,
51582
+ i1.TranslateModule,
51583
+ i2.FormsModule,
51584
+ i2.ReactiveFormsModule,
51585
+ i4$3.MatProgressBarModule,
51586
+ i2$2.MatIconModule,
51587
+ i2$5.MatRadioModule,
51588
+ i2$2.MatIconModule,
51589
+ NoDataModule,
51590
+ DynamicFormModule,
51591
+ NuxeoDialogModule,
51592
+ ]] });
51593
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NdfSignaturesModule, decorators: [{
51594
+ type: i0.NgModule,
51595
+ args: [{
51596
+ declarations: [
51597
+ NdfSignaturePanelComponent,
51598
+ EmdhaAuthDialog
51599
+ ],
51600
+ imports: [
51601
+ i4.CommonModule,
51602
+ i1.TranslateModule,
51603
+ i2.FormsModule,
51604
+ i2.ReactiveFormsModule,
51605
+ i4$3.MatProgressBarModule,
51606
+ i2$2.MatIconModule,
51607
+ i2$5.MatRadioModule,
51608
+ i2$2.MatIconModule,
51609
+ NoDataModule,
51610
+ DynamicFormModule,
51611
+ NuxeoDialogModule,
51612
+ ],
51613
+ exports: [
51614
+ NdfSignaturePanelComponent,
51615
+ EmdhaAuthDialog
51616
+ ]
51617
+ }]
51618
+ }] });
51619
+
50872
51620
  /*
50873
51621
  * Public API Surface of nuxeo-development-framework
50874
51622
  */
@@ -51092,6 +51840,8 @@
51092
51840
  exports.EditorSettingsComponent = EditorSettingsComponent;
51093
51841
  exports.ElementHeightDirective = ElementHeightDirective;
51094
51842
  exports.ElementHeightModule = ElementHeightModule;
51843
+ exports.EmdhaAuthDialog = EmdhaAuthDialog;
51844
+ exports.EmdhaService = EmdhaService;
51095
51845
  exports.EmptyTemplateDirective = EmptyTemplateDirective;
51096
51846
  exports.EnvManager = EnvManager;
51097
51847
  exports.Evaluator = Evaluator;
@@ -51214,6 +51964,8 @@
51214
51964
  exports.NdfReportsService = NdfReportsService;
51215
51965
  exports.NdfScannerComponent = NdfScannerComponent;
51216
51966
  exports.NdfScannerModule = NdfScannerModule;
51967
+ exports.NdfSignaturePanelComponent = NdfSignaturePanelComponent;
51968
+ exports.NdfSignaturesModule = NdfSignaturesModule;
51217
51969
  exports.NdfTableComponent = NdfTableComponent;
51218
51970
  exports.NdfTableConfigurationService = NdfTableConfigurationService;
51219
51971
  exports.NdfTableModule = NdfTableModule;
@@ -51312,6 +52064,7 @@
51312
52064
  exports.SharedDocsService = SharedDocsService;
51313
52065
  exports.SharedServicesModule = SharedServicesModule;
51314
52066
  exports.SidepanelComponent = SidepanelComponent;
52067
+ exports.SignaturesService = SignaturesService;
51315
52068
  exports.SilentPdfTronService = SilentPdfTronService;
51316
52069
  exports.SingleActivityComponent = SingleActivityComponent;
51317
52070
  exports.SkeletonComponent = SkeletonComponent;