@provoly/hypervisor 2.3.6 → 2.3.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -9,7 +9,6 @@ import * as i1 from "@provoly/dashboard";
9
9
  import * as i2 from "@angular/cdk/overlay";
10
10
  import * as i3 from "../../../../store/service/service.service";
11
11
  import * as i4 from "@ngrx/store";
12
- import * as i5 from "@angular/common";
13
12
  export class HvyServiceActionDisplayComponent extends HvyBaseParameterActionComponent {
14
13
  constructor(pryDialog, overlay, serviceService, i18n, store) {
15
14
  super();
@@ -73,13 +72,13 @@ export class HvyServiceActionDisplayComponent extends HvyBaseParameterActionComp
73
72
  });
74
73
  }
75
74
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: HvyServiceActionDisplayComponent, deps: [{ token: i1.PryDialogService }, { token: i2.Overlay }, { token: i3.ServiceService }, { token: i1.I18nPipe }, { token: i4.Store }], target: i0.ɵɵFactoryTarget.Component }); }
76
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: HvyServiceActionDisplayComponent, selector: "hvy-service-action-display", viewQueries: [{ propertyName: "menuButton", first: true, predicate: ["menuButton"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<div class=\"param-line -vertical\">\n diURL: {{ toto| async }}\n <p>\n {{ '@hvy.procedure.action.service' | i18n }} :\n @if (diUrl() && action.serviceExternalId) {\n <a class=\"a-di-link\" [href]=\"diUrl()! + reference\" target=\"_blank\" rel=\"noopener noreferrer\"><b>{{ reference }}</b></a>\n } @else {\n <b>{{ reference }}</b>\n }\n {{ status }}\n </p>\n @if (!action.serviceExternalId && this.mode !== 'model') {\n <button\n class=\"a-link\"\n [disabled]=\"readonly ||\n (action.type === 'ASKED_SERVICE' &&\n (action.status === 'DONE' || action.status === 'OT_CLOSED' || !action.lastModificationDate)\n ) || disableSaveDIButton\"\n (click)=\"toggleModal()\"\n #menuButton\n >\n > {{ '@hvy.action.create' | i18n }}\n </button>\n }\n</div>\n", dependencies: [{ kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i1.I18nPipe, name: "i18n" }] }); }
75
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: HvyServiceActionDisplayComponent, selector: "hvy-service-action-display", viewQueries: [{ propertyName: "menuButton", first: true, predicate: ["menuButton"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<div class=\"param-line -vertical\">\n <p>\n {{ '@hvy.procedure.action.service' | i18n }} :\n @if (diUrl() && action.serviceExternalId) {\n <a class=\"a-di-link\" [href]=\"diUrl()! + reference\" target=\"_blank\" rel=\"noopener noreferrer\"><b>{{ reference }}</b></a>\n } @else {\n <b>{{ reference }}</b>\n }\n {{ status }}\n </p>\n @if (!action.serviceExternalId && this.mode !== 'model') {\n <button\n class=\"a-link\"\n [disabled]=\"readonly ||\n (action.type === 'ASKED_SERVICE' &&\n (action.status === 'DONE' || action.status === 'OT_CLOSED' || !action.lastModificationDate)\n ) || disableSaveDIButton\"\n (click)=\"toggleModal()\"\n #menuButton\n >\n > {{ '@hvy.action.create' | i18n }}\n </button>\n }\n</div>\n", dependencies: [{ kind: "pipe", type: i1.I18nPipe, name: "i18n" }] }); }
77
76
  }
78
77
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: HvyServiceActionDisplayComponent, decorators: [{
79
78
  type: Component,
80
- args: [{ selector: 'hvy-service-action-display', template: "<div class=\"param-line -vertical\">\n diURL: {{ toto| async }}\n <p>\n {{ '@hvy.procedure.action.service' | i18n }} :\n @if (diUrl() && action.serviceExternalId) {\n <a class=\"a-di-link\" [href]=\"diUrl()! + reference\" target=\"_blank\" rel=\"noopener noreferrer\"><b>{{ reference }}</b></a>\n } @else {\n <b>{{ reference }}</b>\n }\n {{ status }}\n </p>\n @if (!action.serviceExternalId && this.mode !== 'model') {\n <button\n class=\"a-link\"\n [disabled]=\"readonly ||\n (action.type === 'ASKED_SERVICE' &&\n (action.status === 'DONE' || action.status === 'OT_CLOSED' || !action.lastModificationDate)\n ) || disableSaveDIButton\"\n (click)=\"toggleModal()\"\n #menuButton\n >\n > {{ '@hvy.action.create' | i18n }}\n </button>\n }\n</div>\n" }]
79
+ args: [{ selector: 'hvy-service-action-display', template: "<div class=\"param-line -vertical\">\n <p>\n {{ '@hvy.procedure.action.service' | i18n }} :\n @if (diUrl() && action.serviceExternalId) {\n <a class=\"a-di-link\" [href]=\"diUrl()! + reference\" target=\"_blank\" rel=\"noopener noreferrer\"><b>{{ reference }}</b></a>\n } @else {\n <b>{{ reference }}</b>\n }\n {{ status }}\n </p>\n @if (!action.serviceExternalId && this.mode !== 'model') {\n <button\n class=\"a-link\"\n [disabled]=\"readonly ||\n (action.type === 'ASKED_SERVICE' &&\n (action.status === 'DONE' || action.status === 'OT_CLOSED' || !action.lastModificationDate)\n ) || disableSaveDIButton\"\n (click)=\"toggleModal()\"\n #menuButton\n >\n > {{ '@hvy.action.create' | i18n }}\n </button>\n }\n</div>\n" }]
81
80
  }], ctorParameters: () => [{ type: i1.PryDialogService }, { type: i2.Overlay }, { type: i3.ServiceService }, { type: i1.I18nPipe }, { type: i4.Store }], propDecorators: { menuButton: [{
82
81
  type: ViewChild,
83
82
  args: ['menuButton', { read: ElementRef }]
84
83
  }] } });
85
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1hY3Rpb24tZGlzcGxheS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2h5cGVydmlzb3Ivc3JjL2xpYi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL3NlcnZpY2Uvc2VydmljZS1hY3Rpb24tZGlzcGxheS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2h5cGVydmlzb3Ivc3JjL2xpYi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL3NlcnZpY2Uvc2VydmljZS1hY3Rpb24tZGlzcGxheS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBVSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFJckYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFdkUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDakYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7Ozs7O0FBYXRELE1BQU0sT0FBTyxnQ0FBaUMsU0FBUSwrQkFBaUQ7SUFPckcsWUFDVSxTQUEyQixFQUMzQixPQUFnQixFQUNoQixjQUE4QixFQUM5QixJQUFjLEVBQ2QsS0FBWTtRQUVwQixLQUFLLEVBQUUsQ0FBQztRQU5BLGNBQVMsR0FBVCxTQUFTLENBQWtCO1FBQzNCLFlBQU8sR0FBUCxPQUFPLENBQVM7UUFDaEIsbUJBQWMsR0FBZCxjQUFjLENB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QUM7UUFDVixDQUFDLENBQUMsQ0FBQztJQUNMLENBQUM7OEdBbkVVLGdDQUFnQztrR0FBaEMsZ0NBQWdDLHVKQUNWLFVBQVUsb0RDeEI3Qyw0ekJBeUJBOzsyRkRGYSxnQ0FBZ0M7a0JBSjVDLFNBQVM7K0JBQ0UsNEJBQTRCO21MQUlTLFVBQVU7c0JBQXhELFNBQVM7dUJBQUMsWUFBWSxFQUFFLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q29tcG9uZW50LCBFbGVtZW50UmVmLCBPbkluaXQsIFZpZXdDaGlsZH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBIdnlCYXNlUGFyYW1ldGVyQWN0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vYmFzZS1wYXJhbWV0ZXItYWN0aW9uLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIeXBBY3Rpb24gfSBmcm9tICcuLi8uLi8uLi8uLi9tb2RlbC9wcm9jZWR1cmUvaHlwLWFjdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUHJ5RGlhbG9nU2VydmljZSwgSTE4blBpcGUgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgT3ZlcmxheSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IEh2eUNyZWF0ZVNlcnZpY2VDb21wb25lbnQgfSBmcm9tICcuL2NyZWF0ZS1zZXJ2aWNlLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIeXBTZXJ2aWNlLCBTZXJ2aWNlU2VydmljZSB9IGZyb20gJy4uLy4uLy4uLy4uL3N0b3JlL3NlcnZpY2Uvc2VydmljZS5zZXJ2aWNlJztcbmltcG9ydCB7IGFjdCB9IGZyb20gJ0BuZ3J4L2VmZmVjdHMnO1xuaW1wb3J0IHsgU3RvcmUgfSBmcm9tICdAbmdyeC9zdG9yZSc7XG5pbXBvcnQgeyBIeXBTZWxlY3RvcnMgfSBmcm9tICcuLi8uLi8uLi8uLi9zdG9yZS9oeXBlcnZpc29yL2h5cGVydmlzb3Iuc2VsZWN0b3JzJztcbmltcG9ydCB7IHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEh5cFNlcnZpY2VBY3Rpb24gZXh0ZW5kcyBIeXBBY3Rpb24ge1xuICBuYW1lOiBzdHJpbmc7XG4gIHNlcnZpY2VFeHRlcm5hbElkPzogc3RyaW5nO1xuICBzZXJ2aWNlQWRkaXRpb25hbEluZm8/OiBzdHJpbmc7XG4gIHNlcnZpY2VTdGF0dXM/OiBzdHJpbmc7XG59XG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2h2eS1zZXJ2aWNlLWFjdGlvbi1kaXNwbGF5JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3NlcnZpY2UtYWN0aW9uLWRpc3BsYXkuY29tcG9uZW50Lmh0bWwnXG59KVxuZXhwb3J0IGNsYXNzIEh2eVNlcnZpY2VBY3Rpb25EaXNwbGF5Q29tcG9uZW50IGV4dGVuZHMgSHZ5QmFzZVBhcmFtZXRlckFjdGlvbkNvbXBvbmVudDxIeXBTZXJ2aWNlQWN0aW9uPiBpbXBsZW1lbnRzIE9uSW5pdHtcbiAgQFZpZXdDaGlsZCgnbWVudUJ1dHRvbicsIHsgcmVhZDogRWxlbWVudFJlZiB9KSBtZW51QnV0dG9uITogRWxlbWVudFJlZjtcbiAgc3RhdHVzITogc3RyaW5nO1xuICByZWZlcmVuY2UhOiBzdHJpbmc7XG4gIGRpVXJsID0gdG9TaWduYWwodGhpcy5zdG9yZS5zZWxlY3QoSHlwU2VsZWN0b3JzLmRpVXJsKSk7XG4gIHRvdG8gPSB0aGlzLnN0b3JlLnNlbGVjdChIeXBTZWxlY3RvcnMuZGlVcmwpO1xuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcHJ5RGlhbG9nOiBQcnlEaWFsb2dTZXJ2aWNlLFxuICAgIHByaXZhdGUgb3ZlcmxheTogT3ZlcmxheSxcbiAgICBwcml2YXRlIHNlcnZpY2VTZXJ2aWNlOiBTZXJ2aWNlU2VydmljZSxcbiAgICBwcml2YXRlIGkxOG46IEkxOG5QaXBlLFxuICAgIHByaXZhdGUgc3RvcmU6IFN0b3JlLFxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5zdGF0dXMgPSB0aGlzLmFjdGlvbi5zZXJ2aWNlU3RhdHVzID9cbiAgICAgICcoJyArIHRoaXMuaTE4bi50cmFuc2Zvcm0oYEBodnkucHJvY2VkdXJlLnN0YXR1cy4ke3RoaXMuYWN0aW9uLnNlcnZpY2VTdGF0dXN9YCkgKyAnKScgOiAnJztcbiAgICB0aGlzLmluaXRBY3Rpb25SZWZlcmVuY2UoKTtcbiAgfVxuXG4gIGluaXRBY3Rpb25SZWZlcmVuY2UoKXtcbiAgICBpZih0aGlzLmFjdGlvbi5zZXJ2aWNlRXh0ZXJuYWxJZCkge1xuICAgICAgaWYodGhpcy5hY3Rpb24uc2VydmljZUFkZGl0aW9uYWxJbmZvKSB7XG4gICAgICAgIHRoaXMucmVmZXJlbmNlID0gYCR7dGhpcy5hY3Rpb24uc2VydmljZUV4dGVybmFsSWR9QCR7dGhpcy5hY3Rpb24uc2VydmljZUFkZGl0aW9uYWxJbmZvfWBcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRoaXMucmVmZXJlbmNlID0gdGhpcy5hY3Rpb24uc2VydmljZUV4dGVybmFsSWQ7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIHRoaXMucmVmZXJlbmNlID0gdGhpcy5hY3Rpb24ubmFtZTtcbiAgICB9XG4gIH1cblxuICB0b2dnbGVNb2RhbCgpIHtcbiAgICBjb25zdCBkaWFsb2dSZWYgPSB0aGlzLnByeURpYWxvZy5vcGVuKEh2eUNyZWF0ZVNlcnZpY2VDb21wb25lbnQsIHtcbiAgICAgIG92ZXJsYXlDb25maWc6IHtcbiAgICAgICAgaGFzQmFja2Ryb3A6IHRydWUsXG4gICAgICAgIHBhbmVsQ2xhc3M6IFsncHJ5LWRpYWxvZy1jb250YWluZXInXSxcbiAgICAgICAgYmFja2Ryb3BDbGFzczogJ2JhY2tkcm9wLWRhcmsnLFxuICAgICAgICBwb3NpdGlvblN0cmF0ZWd5OiB0aGlzLm92ZXJsYXkucG9zaXRpb24oKS5nbG9iYWwoKS5jZW50ZXJIb3Jpem9udGFsbHkoKS5jZW50ZXJWZXJ0aWNhbGx5KClcbiAgICAgIH0sXG4gICAgICBkYXRhOiB7XG4gICAgICAgIGFjdGlvbjogdGhpcy5hY3Rpb24sXG4gICAgICAgIGV2ZW50czogdGhpcy5ldmVudHNcbiAgICAgIH1cbiAgICB9KTtcblxuICAgIGNvbnN0IHN1YiA9IGRpYWxvZ1JlZi5jbG9zZVZhbHVlLnN1YnNjcmliZSgodHlwZTogSHlwU2VydmljZSAmIHsgdmFsdWU6IHN0cmluZyB9KSA9PiB7XG4gICAgICBzd2l0Y2ggKHR5cGUudmFsdWUpIHtcbiAgICAgICAgY2FzZSAnb2snOlxuICAgICAgICAgIHRoaXMuc2VydmljZVNlcnZpY2VcbiAgICAgICAgICAgIC5jcmVhdGUodHlwZSwgdGhpcy5hY3Rpb24uaWQpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKChuYW1lKSA9PiB7XG4gICAgICAgICAgICAgIHRoaXMuYWN0aW9uLnNlcnZpY2VFeHRlcm5hbElkID0gbmFtZS5pZDtcbiAgICAgICAgICAgICAgdGhpcy5pbml0QWN0aW9uUmVmZXJlbmNlKCk7XG4gICAgICAgICAgICAgIHRoaXMuc2VydmljZVNlcnZpY2UucmVmcmVzaERpQWN0aW9uLm5leHQodHJ1ZSk7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSAnY2FuY2VsJzpcbiAgICAgICAgICBicmVhaztcbiAgICAgIH1cbiAgICAgIHNldFRpbWVvdXQoKCkgPT4ge1xuICAgICAgICBzdWIudW5zdWJzY3JpYmUoKTtcbiAgICAgIH0sIDEwMCk7XG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgcmVhZG9ubHkgYWN0ID0gYWN0O1xufVxuIiwiPGRpdiBjbGFzcz1cInBhcmFtLWxpbmUgLXZlcnRpY2FsXCI+XG4gIGRpVVJMOiB7eyB0b3RvfCBhc3luYyB9fVxuICA8cD5cbiAgICB7eyAnQGh2eS5wcm9jZWR1cmUuYWN0aW9uLnNlcnZpY2UnIHwgaTE4biB9fSA6XG4gICAgQGlmIChkaVVybCgpICYmIGFjdGlvbi5zZXJ2aWNlRXh0ZXJuYWxJZCkge1xuICAgICAgPGEgY2xhc3M9XCJhLWRpLWxpbmtcIiBbaHJlZl09XCJkaVVybCgpISArIHJlZmVyZW5jZVwiIHRhcmdldD1cIl9ibGFua1wiIHJlbD1cIm5vb3BlbmVyIG5vcmVmZXJyZXJcIj48Yj57eyByZWZlcmVuY2UgfX08L2I+PC9hPlxuICAgIH0gQGVsc2Uge1xuICAgICAgPGI+e3sgcmVmZXJlbmNlIH19PC9iPlxuICAgIH1cbiAgICB7eyBzdGF0dXMgfX1cbiAgPC9wPlxuICBAaWYgKCFhY3Rpb24uc2VydmljZUV4dGVybmFsSWQgJiYgdGhpcy5tb2RlICE9PSAnbW9kZWwnKSB7XG4gICAgPGJ1dHRvblxuICAgICAgY2xhc3M9XCJhLWxpbmtcIlxuICAgICAgW2Rpc2FibGVkXT1cInJlYWRvbmx5IHx8XG4gICAgICAoYWN0aW9uLnR5cGUgPT09ICdBU0tFRF9TRVJWSUNFJyAmJlxuICAgICAgICAoYWN0aW9uLnN0YXR1cyA9PT0gJ0RPTkUnIHx8IGFjdGlvbi5zdGF0dXMgPT09ICdPVF9DTE9TRUQnIHx8ICFhY3Rpb24ubGFzdE1vZGlmaWNhdGlvbkRhdGUpXG4gICAgICApIHx8IGRpc2FibGVTYXZlRElCdXR0b25cIlxuICAgICAgKGNsaWNrKT1cInRvZ2dsZU1vZGFsKClcIlxuICAgICAgI21lbnVCdXR0b25cbiAgICA+XG4gICAgICA+IHt7ICdAaHZ5LmFjdGlvbi5jcmVhdGUnIHwgaTE4biB9fVxuICAgIDwvYnV0dG9uPlxuICB9XG48L2Rpdj5cbiJdfQ==
84
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2VydmljZS1hY3Rpb24tZGlzcGxheS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2h5cGVydmlzb3Ivc3JjL2xpYi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL3NlcnZpY2Uvc2VydmljZS1hY3Rpb24tZGlzcGxheS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2h5cGVydmlzb3Ivc3JjL2xpYi9nZW5lcmFsL3Byb2NlZHVyZS1hY3Rpb25zL2FjdGlvbi1wYXJhbWV0ZXJzL3NlcnZpY2Uvc2VydmljZS1hY3Rpb24tZGlzcGxheS5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUMsU0FBUyxFQUFFLFVBQVUsRUFBVSxTQUFTLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFJckYsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFFdkUsT0FBTyxFQUFFLEdBQUcsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUVwQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sbURBQW1ELENBQUM7QUFDakYsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDOzs7Ozs7QUFhdEQsTUFBTSxPQUFPLGdDQUFpQyxTQUFRLCtCQUFpRDtJQU9yRyxZQUNVLFNBQTJCLEVBQzNCLE9BQWdCLEVBQ2hCLGNBQThCLEVBQzlCLElBQWMsRUFDZCxLQUFZO1FBRXBCLEtBQUssRUFBRSxDQUFDO1FBTkEsY0FBUyxHQUFULFNBQVMsQ0FBa0I7UUFDM0IsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNoQixtQkFBYyxHQUFkLGNBQWMsQ0FB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QztRQUNWLENBQUMsQ0FBQyxDQUFDO0lBQ0wsQ0FBQzs4R0FuRVUsZ0NBQWdDO2tHQUFoQyxnQ0FBZ0MsdUpBQ1YsVUFBVSxvREN4QjdDLGd5QkF3QkE7OzJGRERhLGdDQUFnQztrQkFKNUMsU0FBUzsrQkFDRSw0QkFBNEI7bUxBSVMsVUFBVTtzQkFBeEQsU0FBUzt1QkFBQyxZQUFZLEVBQUUsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDb21wb25lbnQsIEVsZW1lbnRSZWYsIE9uSW5pdCwgVmlld0NoaWxkfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEh2eUJhc2VQYXJhbWV0ZXJBY3Rpb25Db21wb25lbnQgfSBmcm9tICcuLi9iYXNlLXBhcmFtZXRlci1hY3Rpb24uY29tcG9uZW50JztcbmltcG9ydCB7IEh5cEFjdGlvbiB9IGZyb20gJy4uLy4uLy4uLy4uL21vZGVsL3Byb2NlZHVyZS9oeXAtYWN0aW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQcnlEaWFsb2dTZXJ2aWNlLCBJMThuUGlwZSB9IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZCc7XG5pbXBvcnQgeyBPdmVybGF5IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL292ZXJsYXknO1xuaW1wb3J0IHsgSHZ5Q3JlYXRlU2VydmljZUNvbXBvbmVudCB9IGZyb20gJy4vY3JlYXRlLXNlcnZpY2UuY29tcG9uZW50JztcbmltcG9ydCB7IEh5cFNlcnZpY2UsIFNlcnZpY2VTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vLi4vLi4vc3RvcmUvc2VydmljZS9zZXJ2aWNlLnNlcnZpY2UnO1xuaW1wb3J0IHsgYWN0IH0gZnJvbSAnQG5ncngvZWZmZWN0cyc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCB7IEh5cFNlbGVjdG9ycyB9IGZyb20gJy4uLy4uLy4uLy4uL3N0b3JlL2h5cGVydmlzb3IvaHlwZXJ2aXNvci5zZWxlY3RvcnMnO1xuaW1wb3J0IHsgdG9TaWduYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgSHlwU2VydmljZUFjdGlvbiBleHRlbmRzIEh5cEFjdGlvbiB7XG4gIG5hbWU6IHN0cmluZztcbiAgc2VydmljZUV4dGVybmFsSWQ/OiBzdHJpbmc7XG4gIHNlcnZpY2VBZGRpdGlvbmFsSW5mbz86IHN0cmluZztcbiAgc2VydmljZVN0YXR1cz86IHN0cmluZztcbn1cblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaHZ5LXNlcnZpY2UtYWN0aW9uLWRpc3BsYXknLFxuICB0ZW1wbGF0ZVVybDogJy4vc2VydmljZS1hY3Rpb24tZGlzcGxheS5jb21wb25lbnQuaHRtbCdcbn0pXG5leHBvcnQgY2xhc3MgSHZ5U2VydmljZUFjdGlvbkRpc3BsYXlDb21wb25lbnQgZXh0ZW5kcyBIdnlCYXNlUGFyYW1ldGVyQWN0aW9uQ29tcG9uZW50PEh5cFNlcnZpY2VBY3Rpb24+IGltcGxlbWVudHMgT25Jbml0e1xuICBAVmlld0NoaWxkKCdtZW51QnV0dG9uJywgeyByZWFkOiBFbGVtZW50UmVmIH0pIG1lbnVCdXR0b24hOiBFbGVtZW50UmVmO1xuICBzdGF0dXMhOiBzdHJpbmc7XG4gIHJlZmVyZW5jZSE6IHN0cmluZztcbiAgZGlVcmwgPSB0b1NpZ25hbCh0aGlzLnN0b3JlLnNlbGVjdChIeXBTZWxlY3RvcnMuZGlVcmwpKTtcbiAgdG90byA9IHRoaXMuc3RvcmUuc2VsZWN0KEh5cFNlbGVjdG9ycy5kaVVybCk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHJpdmF0ZSBwcnlEaWFsb2c6IFByeURpYWxvZ1NlcnZpY2UsXG4gICAgcHJpdmF0ZSBvdmVybGF5OiBPdmVybGF5LFxuICAgIHByaXZhdGUgc2VydmljZVNlcnZpY2U6IFNlcnZpY2VTZXJ2aWNlLFxuICAgIHByaXZhdGUgaTE4bjogSTE4blBpcGUsXG4gICAgcHJpdmF0ZSBzdG9yZTogU3RvcmUsXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICB0aGlzLnN0YXR1cyA9IHRoaXMuYWN0aW9uLnNlcnZpY2VTdGF0dXMgP1xuICAgICAgJygnICsgdGhpcy5pMThuLnRyYW5zZm9ybShgQGh2eS5wcm9jZWR1cmUuc3RhdHVzLiR7dGhpcy5hY3Rpb24uc2VydmljZVN0YXR1c31gKSArICcpJyA6ICcnO1xuICAgIHRoaXMuaW5pdEFjdGlvblJlZmVyZW5jZSgpO1xuICB9XG5cbiAgaW5pdEFjdGlvblJlZmVyZW5jZSgpe1xuICAgIGlmKHRoaXMuYWN0aW9uLnNlcnZpY2VFeHRlcm5hbElkKSB7XG4gICAgICBpZih0aGlzLmFjdGlvbi5zZXJ2aWNlQWRkaXRpb25hbEluZm8pIHtcbiAgICAgICAgdGhpcy5yZWZlcmVuY2UgPSBgJHt0aGlzLmFjdGlvbi5zZXJ2aWNlRXh0ZXJuYWxJZH1AJHt0aGlzLmFjdGlvbi5zZXJ2aWNlQWRkaXRpb25hbEluZm99YFxuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5yZWZlcmVuY2UgPSB0aGlzLmFjdGlvbi5zZXJ2aWNlRXh0ZXJuYWxJZDtcbiAgICAgIH1cbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5yZWZlcmVuY2UgPSB0aGlzLmFjdGlvbi5uYW1lO1xuICAgIH1cbiAgfVxuXG4gIHRvZ2dsZU1vZGFsKCkge1xuICAgIGNvbnN0IGRpYWxvZ1JlZiA9IHRoaXMucHJ5RGlhbG9nLm9wZW4oSHZ5Q3JlYXRlU2VydmljZUNvbXBvbmVudCwge1xuICAgICAgb3ZlcmxheUNvbmZpZzoge1xuICAgICAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcbiAgICAgICAgcGFuZWxDbGFzczogWydwcnktZGlhbG9nLWNvbnRhaW5lciddLFxuICAgICAgICBiYWNrZHJvcENsYXNzOiAnYmFja2Ryb3AtZGFyaycsXG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IHRoaXMub3ZlcmxheS5wb3NpdGlvbigpLmdsb2JhbCgpLmNlbnRlckhvcml6b250YWxseSgpLmNlbnRlclZlcnRpY2FsbHkoKVxuICAgICAgfSxcbiAgICAgIGRhdGE6IHtcbiAgICAgICAgYWN0aW9uOiB0aGlzLmFjdGlvbixcbiAgICAgICAgZXZlbnRzOiB0aGlzLmV2ZW50c1xuICAgICAgfVxuICAgIH0pO1xuXG4gICAgY29uc3Qgc3ViID0gZGlhbG9nUmVmLmNsb3NlVmFsdWUuc3Vic2NyaWJlKCh0eXBlOiBIeXBTZXJ2aWNlICYgeyB2YWx1ZTogc3RyaW5nIH0pID0+IHtcbiAgICAgIHN3aXRjaCAodHlwZS52YWx1ZSkge1xuICAgICAgICBjYXNlICdvayc6XG4gICAgICAgICAgdGhpcy5zZXJ2aWNlU2VydmljZVxuICAgICAgICAgICAgLmNyZWF0ZSh0eXBlLCB0aGlzLmFjdGlvbi5pZClcbiAgICAgICAgICAgIC5zdWJzY3JpYmUoKG5hbWUpID0+IHtcbiAgICAgICAgICAgICAgdGhpcy5hY3Rpb24uc2VydmljZUV4dGVybmFsSWQgPSBuYW1lLmlkO1xuICAgICAgICAgICAgICB0aGlzLmluaXRBY3Rpb25SZWZlcmVuY2UoKTtcbiAgICAgICAgICAgICAgdGhpcy5zZXJ2aWNlU2VydmljZS5yZWZyZXNoRGlBY3Rpb24ubmV4dCh0cnVlKTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBjYXNlICdjYW5jZWwnOlxuICAgICAgICAgIGJyZWFrO1xuICAgICAgfVxuICAgICAgc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHN1Yi51bnN1YnNjcmliZSgpO1xuICAgICAgfSwgMTAwKTtcbiAgICB9KTtcbiAgfVxuXG4gIHByb3RlY3RlZCByZWFkb25seSBhY3QgPSBhY3Q7XG59XG4iLCI8ZGl2IGNsYXNzPVwicGFyYW0tbGluZSAtdmVydGljYWxcIj5cbiAgPHA+XG4gICAge3sgJ0BodnkucHJvY2VkdXJlLmFjdGlvbi5zZXJ2aWNlJyB8IGkxOG4gfX0gOlxuICAgIEBpZiAoZGlVcmwoKSAmJiBhY3Rpb24uc2VydmljZUV4dGVybmFsSWQpIHtcbiAgICAgIDxhIGNsYXNzPVwiYS1kaS1saW5rXCIgW2hyZWZdPVwiZGlVcmwoKSEgKyByZWZlcmVuY2VcIiB0YXJnZXQ9XCJfYmxhbmtcIiByZWw9XCJub29wZW5lciBub3JlZmVycmVyXCI+PGI+e3sgcmVmZXJlbmNlIH19PC9iPjwvYT5cbiAgICB9IEBlbHNlIHtcbiAgICAgIDxiPnt7IHJlZmVyZW5jZSB9fTwvYj5cbiAgICB9XG4gICAge3sgc3RhdHVzIH19XG4gIDwvcD5cbiAgQGlmICghYWN0aW9uLnNlcnZpY2VFeHRlcm5hbElkICYmIHRoaXMubW9kZSAhPT0gJ21vZGVsJykge1xuICAgIDxidXR0b25cbiAgICAgIGNsYXNzPVwiYS1saW5rXCJcbiAgICAgIFtkaXNhYmxlZF09XCJyZWFkb25seSB8fFxuICAgICAgKGFjdGlvbi50eXBlID09PSAnQVNLRURfU0VSVklDRScgJiZcbiAgICAgICAgKGFjdGlvbi5zdGF0dXMgPT09ICdET05FJyB8fCBhY3Rpb24uc3RhdHVzID09PSAnT1RfQ0xPU0VEJyB8fCAhYWN0aW9uLmxhc3RNb2RpZmljYXRpb25EYXRlKVxuICAgICAgKSB8fCBkaXNhYmxlU2F2ZURJQnV0dG9uXCJcbiAgICAgIChjbGljayk9XCJ0b2dnbGVNb2RhbCgpXCJcbiAgICAgICNtZW51QnV0dG9uXG4gICAgPlxuICAgICAgPiB7eyAnQGh2eS5hY3Rpb24uY3JlYXRlJyB8IGkxOG4gfX1cbiAgICA8L2J1dHRvbj5cbiAgfVxuPC9kaXY+XG4iXX0=
@@ -112,11 +112,11 @@ export class ProcedureModelDetailComponent extends SubscriptionnerDirective {
112
112
  this._outputModifications();
113
113
  }
114
114
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: ProcedureModelDetailComponent, deps: [{ token: i1.Actions }], target: i0.ɵɵFactoryTarget.Component }); }
115
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: ProcedureModelDetailComponent, selector: "hvy-procedure-model-detail", inputs: { model: "model", username: "username", title: "title", eventErrors: "eventErrors", readonly: "readonly", readOnlyComment: "readOnlyComment", cancelModifications: "cancelModifications" }, outputs: { eventErrorsChange: "eventErrorsChange", modified: "modified" }, usesInheritance: true, ngImport: i0, template: "<div class=\"o-hvy-procedure-detail\">\n <div>\n <h1>{{ title ?? '@hvy.procedure.detail' | i18n }}</h1>\n @if(modifiedModel && modifiedModel.lastUpdateDateActive) {\n <div>\n @if (modifiedModel.active) {\n Proc\u00E9dure r\u00E9activ\u00E9e depuis le {{ modifiedModel.lastUpdateDateActive! | date:'dd/MM/yyyy \u00E0 HH:mm' }}\n } @else {\n Proc\u00E9dure d\u00E9sactiv\u00E9e depuis le {{ modifiedModel.lastUpdateDateActive! | date:'dd/MM/yyyy \u00E0 HH:mm' }}\n }\n </div>\n }\n </div>\n <div class=\"o-hvy-procedure-detail__container\">\n <div class=\"o-hvy-procedure-detail__container__scrollable\">\n @if (modifiedModel; as model) {\n <div class=\"o-hvy-procedure-detail__form\">\n <div>\n <h3>{{ '@hvy.procedure.formTitle' | i18n }}</h3>\n <span class=\"slt-ind2-bubble-container\">\n @if (model.active !== undefined) {\n <div [ngClass]=\"model.active ? '-green' : '-red'\">{{ '@hvy.procedure.status.active.' + model.active | i18n }}</div>\n }\n </span>\n </div>\n <table>\n <tbody>\n <!--identifiant-->\n @if (model.id > 0) {\n <tr>\n <td>{{ '@hvy.event.log.event.id' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"padId.fn(model.id)\" readonly />\n </td>\n </tr>\n }\n <!--titre-->\n <tr>\n <td>{{ '@hvy.procedure.title' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('name')\"\n [value]=\"model.name\"\n (change)=\"modify('name', $event)\"\n [maxLength]=\"50\"\n [readonly]=\"readonly\"\n />\n @if (hasError('title')) {\n <span class=\"a-form-field -error\">{{ '@hvy.procedure.alreadyExists' | i18n }}</span>\n }\n </td>\n </tr>\n <!--metier-->\n <tr>\n <td>{{ '@hvy.event.domain.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [items]=\"DOMAINS\"\n [ngModel]=\"model.domain\"\n i18nPrefix=\"@hvy.event.domain.\"\n [class.-error]=\"hasError('domain')\"\n (ngModelChange)=\"modify('domain', $event)\"\n [disabled]=\"readonly\"\n ></pry-select>\n </td>\n </tr>\n <!--description-->\n <tr>\n <td>{{ '@hvy.procedure.description' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <textarea\n [ngModel]=\"model.description\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('description')\"\n (ngModelChange)=\"modify('description', $event)\"\n [maxLength]=\"256\"\n [readonly]=\"readonly\"\n ></textarea>\n </td>\n </tr>\n <!--createur-->\n <tr>\n <td>{{ '@hvy.procedure.creator' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"model.creator\" readonly />\n </td>\n </tr>\n <!--date de cr\u00E9ation-->\n <tr>\n <td>{{ '@hvy.event.creationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"model.creationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n </tr>\n <!--date de derni\u00E8re modification-->\n <tr>\n <td>{{ '@hvy.event.lastModificationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"model.lastModificationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n <div class=\"o-hvy-procedure-detail__actions\">\n <h3>{{ '@hvy.procedure.actions' | i18n }} ({{ model.actions?.length }})</h3>\n <hvy-procedure-actions\n [actions]=\"model.actions\"\n (modified)=\"updateActions($event)\"\n [readonly]=\"readonly\"\n [readOnlyComment]=\"readOnlyComment\"\n mode=\"model\"\n [enableEditActions]=\"true\"\n ></hvy-procedure-actions>\n </div>\n }\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.PrySelectComponent, selector: "pry-select", inputs: ["items", "clearable", "multiple", "closeOnSelect", "placeholder", "forcePlaceHolder", "isForm", "required", "name", "autocomplete", "alwaysShowAutosuggestedValues", "externalAutocompleteService", "bindValue", "bindLabel", "iconSize", "bindIcon", "template", "i18nPrefix", "bindClasses", "loading", "elementRef"], outputs: ["searched", "cleared", "clicked", "pressedEnter"] }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i5.ProcedureActionsComponent, selector: "hvy-procedure-actions", inputs: ["mode", "me", "readonly", "readOnlyComment", "enableEditActions", "events", "disableSaveDIButton", "initialActions", "procedureModificationsActions", "actions"], outputs: ["modified", "commented", "refreshActions"] }, { kind: "pipe", type: i3.I18nPipe, name: "i18n" }, { kind: "pipe", type: i4.DatePipe, name: "date" }, { kind: "pipe", type: i6.ForDatetimeLocalPipe, name: "forDateTimeLocal" }] }); }
115
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: ProcedureModelDetailComponent, selector: "hvy-procedure-model-detail", inputs: { model: "model", username: "username", title: "title", eventErrors: "eventErrors", readonly: "readonly", readOnlyComment: "readOnlyComment", cancelModifications: "cancelModifications" }, outputs: { eventErrorsChange: "eventErrorsChange", modified: "modified" }, usesInheritance: true, ngImport: i0, template: "<div class=\"o-hvy-procedure-detail\">\n <div>\n <h1>{{ title ?? '@hvy.procedure.detail' | i18n }}</h1>\n @if(modifiedModel && modifiedModel.lastUpdateDateActive) {\n <div>\n @if (modifiedModel.active) {\n Proc\u00E9dure r\u00E9activ\u00E9e depuis le {{ modifiedModel.lastUpdateDateActive! | date:'dd/MM/yyyy \u00E0 HH:mm' }}\n } @else {\n Proc\u00E9dure d\u00E9sactiv\u00E9e depuis le {{ modifiedModel.lastUpdateDateActive! | date:'dd/MM/yyyy \u00E0 HH:mm' }}\n }\n </div>\n }\n </div>\n <div class=\"o-hvy-procedure-detail__container\">\n <div class=\"o-hvy-procedure-detail__container__scrollable\">\n @if (modifiedModel; as model) {\n <div class=\"o-hvy-procedure-detail__form\">\n <div>\n <h3>{{ '@hvy.procedure.formTitle' | i18n }}</h3>\n <span class=\"dashboard-bubble-container\">\n @if (model.active !== undefined) {\n <div [ngClass]=\"model.active ? '-green' : '-red'\">{{ '@hvy.procedure.status.active.' + model.active | i18n }}</div>\n }\n </span>\n </div>\n <table>\n <tbody>\n <!--identifiant-->\n @if (model.id > 0) {\n <tr>\n <td>{{ '@hvy.event.log.event.id' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"padId.fn(model.id)\" readonly />\n </td>\n </tr>\n }\n <!--titre-->\n <tr>\n <td>{{ '@hvy.procedure.title' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('name')\"\n [value]=\"model.name\"\n (change)=\"modify('name', $event)\"\n [maxLength]=\"50\"\n [readonly]=\"readonly\"\n />\n @if (hasError('title')) {\n <span class=\"a-form-field -error\">{{ '@hvy.procedure.alreadyExists' | i18n }}</span>\n }\n </td>\n </tr>\n <!--metier-->\n <tr>\n <td>{{ '@hvy.event.domain.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [items]=\"DOMAINS\"\n [ngModel]=\"model.domain\"\n i18nPrefix=\"@hvy.event.domain.\"\n [class.-error]=\"hasError('domain')\"\n (ngModelChange)=\"modify('domain', $event)\"\n [disabled]=\"readonly\"\n ></pry-select>\n </td>\n </tr>\n <!--description-->\n <tr>\n <td>{{ '@hvy.procedure.description' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <textarea\n [ngModel]=\"model.description\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('description')\"\n (ngModelChange)=\"modify('description', $event)\"\n [maxLength]=\"256\"\n [readonly]=\"readonly\"\n ></textarea>\n </td>\n </tr>\n <!--createur-->\n <tr>\n <td>{{ '@hvy.procedure.creator' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"model.creator\" readonly />\n </td>\n </tr>\n <!--date de cr\u00E9ation-->\n <tr>\n <td>{{ '@hvy.event.creationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"model.creationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n </tr>\n <!--date de derni\u00E8re modification-->\n <tr>\n <td>{{ '@hvy.event.lastModificationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"model.lastModificationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n <div class=\"o-hvy-procedure-detail__actions\">\n <h3>{{ '@hvy.procedure.actions' | i18n }} ({{ model.actions?.length }})</h3>\n <hvy-procedure-actions\n [actions]=\"model.actions\"\n (modified)=\"updateActions($event)\"\n [readonly]=\"readonly\"\n [readOnlyComment]=\"readOnlyComment\"\n mode=\"model\"\n [enableEditActions]=\"true\"\n ></hvy-procedure-actions>\n </div>\n }\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i3.PrySelectComponent, selector: "pry-select", inputs: ["items", "clearable", "multiple", "closeOnSelect", "placeholder", "forcePlaceHolder", "isForm", "required", "name", "autocomplete", "alwaysShowAutosuggestedValues", "externalAutocompleteService", "bindValue", "bindLabel", "iconSize", "bindIcon", "template", "i18nPrefix", "bindClasses", "loading", "elementRef"], outputs: ["searched", "cleared", "clicked", "pressedEnter"] }, { kind: "directive", type: i4.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i5.ProcedureActionsComponent, selector: "hvy-procedure-actions", inputs: ["mode", "me", "readonly", "readOnlyComment", "enableEditActions", "events", "disableSaveDIButton", "initialActions", "procedureModificationsActions", "actions"], outputs: ["modified", "commented", "refreshActions"] }, { kind: "pipe", type: i3.I18nPipe, name: "i18n" }, { kind: "pipe", type: i4.DatePipe, name: "date" }, { kind: "pipe", type: i6.ForDatetimeLocalPipe, name: "forDateTimeLocal" }] }); }
116
116
  }
117
117
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: ProcedureModelDetailComponent, decorators: [{
118
118
  type: Component,
119
- args: [{ selector: 'hvy-procedure-model-detail', template: "<div class=\"o-hvy-procedure-detail\">\n <div>\n <h1>{{ title ?? '@hvy.procedure.detail' | i18n }}</h1>\n @if(modifiedModel && modifiedModel.lastUpdateDateActive) {\n <div>\n @if (modifiedModel.active) {\n Proc\u00E9dure r\u00E9activ\u00E9e depuis le {{ modifiedModel.lastUpdateDateActive! | date:'dd/MM/yyyy \u00E0 HH:mm' }}\n } @else {\n Proc\u00E9dure d\u00E9sactiv\u00E9e depuis le {{ modifiedModel.lastUpdateDateActive! | date:'dd/MM/yyyy \u00E0 HH:mm' }}\n }\n </div>\n }\n </div>\n <div class=\"o-hvy-procedure-detail__container\">\n <div class=\"o-hvy-procedure-detail__container__scrollable\">\n @if (modifiedModel; as model) {\n <div class=\"o-hvy-procedure-detail__form\">\n <div>\n <h3>{{ '@hvy.procedure.formTitle' | i18n }}</h3>\n <span class=\"slt-ind2-bubble-container\">\n @if (model.active !== undefined) {\n <div [ngClass]=\"model.active ? '-green' : '-red'\">{{ '@hvy.procedure.status.active.' + model.active | i18n }}</div>\n }\n </span>\n </div>\n <table>\n <tbody>\n <!--identifiant-->\n @if (model.id > 0) {\n <tr>\n <td>{{ '@hvy.event.log.event.id' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"padId.fn(model.id)\" readonly />\n </td>\n </tr>\n }\n <!--titre-->\n <tr>\n <td>{{ '@hvy.procedure.title' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('name')\"\n [value]=\"model.name\"\n (change)=\"modify('name', $event)\"\n [maxLength]=\"50\"\n [readonly]=\"readonly\"\n />\n @if (hasError('title')) {\n <span class=\"a-form-field -error\">{{ '@hvy.procedure.alreadyExists' | i18n }}</span>\n }\n </td>\n </tr>\n <!--metier-->\n <tr>\n <td>{{ '@hvy.event.domain.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [items]=\"DOMAINS\"\n [ngModel]=\"model.domain\"\n i18nPrefix=\"@hvy.event.domain.\"\n [class.-error]=\"hasError('domain')\"\n (ngModelChange)=\"modify('domain', $event)\"\n [disabled]=\"readonly\"\n ></pry-select>\n </td>\n </tr>\n <!--description-->\n <tr>\n <td>{{ '@hvy.procedure.description' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <textarea\n [ngModel]=\"model.description\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('description')\"\n (ngModelChange)=\"modify('description', $event)\"\n [maxLength]=\"256\"\n [readonly]=\"readonly\"\n ></textarea>\n </td>\n </tr>\n <!--createur-->\n <tr>\n <td>{{ '@hvy.procedure.creator' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"model.creator\" readonly />\n </td>\n </tr>\n <!--date de cr\u00E9ation-->\n <tr>\n <td>{{ '@hvy.event.creationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"model.creationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n </tr>\n <!--date de derni\u00E8re modification-->\n <tr>\n <td>{{ '@hvy.event.lastModificationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"model.lastModificationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n <div class=\"o-hvy-procedure-detail__actions\">\n <h3>{{ '@hvy.procedure.actions' | i18n }} ({{ model.actions?.length }})</h3>\n <hvy-procedure-actions\n [actions]=\"model.actions\"\n (modified)=\"updateActions($event)\"\n [readonly]=\"readonly\"\n [readOnlyComment]=\"readOnlyComment\"\n mode=\"model\"\n [enableEditActions]=\"true\"\n ></hvy-procedure-actions>\n </div>\n }\n </div>\n </div>\n</div>\n" }]
119
+ args: [{ selector: 'hvy-procedure-model-detail', template: "<div class=\"o-hvy-procedure-detail\">\n <div>\n <h1>{{ title ?? '@hvy.procedure.detail' | i18n }}</h1>\n @if(modifiedModel && modifiedModel.lastUpdateDateActive) {\n <div>\n @if (modifiedModel.active) {\n Proc\u00E9dure r\u00E9activ\u00E9e depuis le {{ modifiedModel.lastUpdateDateActive! | date:'dd/MM/yyyy \u00E0 HH:mm' }}\n } @else {\n Proc\u00E9dure d\u00E9sactiv\u00E9e depuis le {{ modifiedModel.lastUpdateDateActive! | date:'dd/MM/yyyy \u00E0 HH:mm' }}\n }\n </div>\n }\n </div>\n <div class=\"o-hvy-procedure-detail__container\">\n <div class=\"o-hvy-procedure-detail__container__scrollable\">\n @if (modifiedModel; as model) {\n <div class=\"o-hvy-procedure-detail__form\">\n <div>\n <h3>{{ '@hvy.procedure.formTitle' | i18n }}</h3>\n <span class=\"dashboard-bubble-container\">\n @if (model.active !== undefined) {\n <div [ngClass]=\"model.active ? '-green' : '-red'\">{{ '@hvy.procedure.status.active.' + model.active | i18n }}</div>\n }\n </span>\n </div>\n <table>\n <tbody>\n <!--identifiant-->\n @if (model.id > 0) {\n <tr>\n <td>{{ '@hvy.event.log.event.id' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"padId.fn(model.id)\" readonly />\n </td>\n </tr>\n }\n <!--titre-->\n <tr>\n <td>{{ '@hvy.procedure.title' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('name')\"\n [value]=\"model.name\"\n (change)=\"modify('name', $event)\"\n [maxLength]=\"50\"\n [readonly]=\"readonly\"\n />\n @if (hasError('title')) {\n <span class=\"a-form-field -error\">{{ '@hvy.procedure.alreadyExists' | i18n }}</span>\n }\n </td>\n </tr>\n <!--metier-->\n <tr>\n <td>{{ '@hvy.event.domain.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [items]=\"DOMAINS\"\n [ngModel]=\"model.domain\"\n i18nPrefix=\"@hvy.event.domain.\"\n [class.-error]=\"hasError('domain')\"\n (ngModelChange)=\"modify('domain', $event)\"\n [disabled]=\"readonly\"\n ></pry-select>\n </td>\n </tr>\n <!--description-->\n <tr>\n <td>{{ '@hvy.procedure.description' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <textarea\n [ngModel]=\"model.description\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('description')\"\n (ngModelChange)=\"modify('description', $event)\"\n [maxLength]=\"256\"\n [readonly]=\"readonly\"\n ></textarea>\n </td>\n </tr>\n <!--createur-->\n <tr>\n <td>{{ '@hvy.procedure.creator' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"model.creator\" readonly />\n </td>\n </tr>\n <!--date de cr\u00E9ation-->\n <tr>\n <td>{{ '@hvy.event.creationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"model.creationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n </tr>\n <!--date de derni\u00E8re modification-->\n <tr>\n <td>{{ '@hvy.event.lastModificationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"model.lastModificationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n <div class=\"o-hvy-procedure-detail__actions\">\n <h3>{{ '@hvy.procedure.actions' | i18n }} ({{ model.actions?.length }})</h3>\n <hvy-procedure-actions\n [actions]=\"model.actions\"\n (modified)=\"updateActions($event)\"\n [readonly]=\"readonly\"\n [readOnlyComment]=\"readOnlyComment\"\n mode=\"model\"\n [enableEditActions]=\"true\"\n ></hvy-procedure-actions>\n </div>\n }\n </div>\n </div>\n</div>\n" }]
120
120
  }], ctorParameters: () => [{ type: i1.Actions }], propDecorators: { model: [{
121
121
  type: Input
122
122
  }], username: [{
@@ -136,4 +136,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImpor
136
136
  }], cancelModifications: [{
137
137
  type: Input
138
138
  }] } });
139
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2VkdXJlLW1vZGVsLWRldGFpbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2h5cGVydmlzb3Ivc3JjL2xpYi9wcm9jZWR1cmUvbW9kZWwtZGV0YWlsL3Byb2NlZHVyZS1tb2RlbC1kZXRhaWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9oeXBlcnZpc29yL3NyYy9saWIvcHJvY2VkdXJlL21vZGVsLWRldGFpbC9wcm9jZWR1cmUtbW9kZWwtZGV0YWlsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFOUQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRXZELE9BQU8sS0FBSyxNQUFNLHFCQUFxQixDQUFDO0FBRXhDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN0RCxPQUFPLEVBQVUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzlDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxLQUFLLEVBQUMsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7O0FBTTNCLE1BQU0sT0FBTyw2QkFBOEIsU0FBUSx3QkFBd0I7SUFjekUsSUFBYSxtQkFBbUIsQ0FBQyxHQUFRO1FBQ3ZDLElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixPQUFPLEVBQUUsR0FBRyxJ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QkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csUUFBUTtzQkFBakIsTUFBTTtnQkFFRSxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBRU8sbUJBQW1CO3NCQUEvQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbm5lckRpcmVjdGl2ZSB9IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZCc7XG5pbXBvcnQgeyBIeXBQcm9jZWR1cmVNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVsL3Byb2NlZHVyZS9oeXAtcHJvY2VkdXJlLW1vZGVsLmludGVyZmFjZSc7XG5pbXBvcnQgeyBET01BSU5TIH0gZnJvbSAnLi4vLi4vbW9kZWwvZG9tYWlucy5jb25zdGFudCc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCBlcXVhbCBmcm9tICdmYXN0LWRlZXAtZXF1YWwvZXM2JztcbmltcG9ydCB7IEh5cEFjdGlvbiB9IGZyb20gJy4uLy4uL21vZGVsL3Byb2NlZHVyZS9oeXAtYWN0aW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBwYWRJZCB9IGZyb20gJy4uLy4uL2dlbmVyYWwvcGFkLWlkLmZ1bmN0aW9uJztcbmltcG9ydCB7QWN0aW9ucywgb2ZUeXBlfSBmcm9tIFwiQG5ncngvZWZmZWN0c1wiO1xuaW1wb3J0IHtQcm9jZWR1cmVBY3Rpb25zfSBmcm9tIFwiLi4vLi4vc3RvcmUvcHJvY2VkdXJlL3Byb2NlZHVyZS5hY3Rpb25zXCI7XG5pbXBvcnQge2RlbGF5fSBmcm9tIFwicnhqc1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdodnktcHJvY2VkdXJlLW1vZGVsLWRldGFpbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9jZWR1cmUtbW9kZWwtZGV0YWlsLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQcm9jZWR1cmVNb2RlbERldGFpbENvbXBvbmVudCBleHRlbmRzIFN1YnNjcmlwdGlvbm5lckRpcmVjdGl2ZSB7XG4gIEBJbnB1dCgpIG1vZGVsPzogSHlwUHJvY2VkdXJlTW9kZWw7XG4gIEBJbnB1dCgpIHVzZXJuYW1lOiBzdHJpbmcgPSAneHh4JztcbiAgbW9kaWZpY2F0aW9uczogUGFydGlhbDxIeXBQcm9jZWR1cmVNb2RlbD4gPSB7fTtcbiAgQElucHV0KCkgdGl0bGU/OiBzdHJpbmc7XG4gIHNhdmVkID0gZmFsc2U7XG4gIGVycm9yczogeyBmaWVsZDogc3RyaW5nOyBjb2RlOiBzdHJpbmcgfVtdID0gW107XG4gIEBJbnB1dCgpIGV2ZW50RXJyb3JzICA6IHsgZmllbGQ6IHN0cmluZzsgY29kZTogc3RyaW5nIH1bXSA9IFtdO1xuICBAT3V0cHV0KCkgZXZlbnRFcnJvcnNDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHsgZmllbGQ6IHN0cmluZzsgY29kZTogc3RyaW5nIH1bXT4oKTtcbiAgQE91dHB1dCgpIG1vZGlmaWVkID0gbmV3IEV2ZW50RW1pdHRlcjxbUGFydGlhbDxIeXBQcm9jZWR1cmVNb2RlbD4sIEh5cFByb2NlZHVyZU1vZGVsXT4oKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IERPTUFJTlMgPSBET01BSU5TLnZhbHVlcztcbiAgQElucHV0KCkgcmVhZG9ubHkgPSBmYWxzZTtcbiAgQElucHV0KCkgcmVhZE9ubHlDb21tZW50ID0gZmFsc2U7XG5cbiAgQElucHV0KCkgc2V0IGNhbmNlbE1vZGlmaWNhdGlvbnMoZXZ0OiBhbnkpIHtcbiAgICB0aGlzLm1vZGlmaWNhdGlvbnMgPSB7fTtcbiAgICB0aGlzLl9vdXRwdXRNb2RpZmljYXRpb25zKCk7XG4gIH1cblxuICBnZXQgbW9kaWZpZWRNb2RlbCgpIHtcbiAgICByZXR1cm4geyAuLi50aGlzLm1vZGVsLCAuLi4odGhpcy5tb2RpZmljYXRpb25zID8/IHt9KSB9IGFzIEh5cFByb2NlZHVyZU1vZGVsO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhY3Rpb25zJDogQWN0aW9ucykge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgICAgb2ZUeXBlKFByb2NlZHVyZUFjdGlvbnMuc2F2ZSlcbiAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgICAgbmV4dDogcmVzdWx0ID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2F2ZWQgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICApXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgICAgb2ZUeXBlKFByb2NlZHVyZUFjdGlvbnMuc2F2ZVN1Y2Nlc3MpLFxuICAgICAgICBkZWxheSgxMDAwKSxcbiAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgICAgbmV4dDogcmVzdWx0ID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2F2ZWQgPSBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgKVxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgIG9mVHlwZShQcm9jZWR1cmVBY3Rpb25zLnNhdmVGYWlsdXJlKSxcbiAgICAgICAgZGVsYXkoMTAwMCksXG4gICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoe1xuICAgICAgICAgIG5leHQ6IHJlc3VsdCA9PiB7XG4gICAgICAgICAgICB0aGlzLnNhdmVkID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIClcbiAgfVxuXG4gIGhhc0Vycm9yKHByb3A6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmVycm9ycy5maW5kKChlcnIpID0+IGVyci5maWVsZCA9PT0gcHJvcCkgPz8gZmFsc2U7XG4gIH1cblxuICB2YWxpZGF0ZShtb2RlbDogSHlwUHJvY2VkdXJlTW9kZWwpIHtcbiAgICBpZiAoISFtb2RlbCkge1xuICAgICAgdGhpcy5lcnJvcnMgPSBbXTtcbiAgICAgIGNvbnN0IHJlZ2V4ID0gbmV3IFJlZ0V4cCggL15cXHMrJC8pO1xuICAgICAgaWYgKCFtb2RlbC5uYW1lIHx8IG1vZGVsLm5hbWUubGVuZ3RoID09PSAwIHx8IHJlZ2V4LnRlc3QobW9kZWwubmFtZSkpIHtcbiAgICAgICAgdGhpcy5lcnJvcnMucHVzaCh7IGZpZWxkOiAnbmFtZScsIGNvZGU6ICdyZXF1aXJlZCcgfSk7XG4gICAgICB9XG4gICAgICBpZiAoIW1vZGVsLmRvbWFpbiB8fCBtb2RlbC5kb21haW4ubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHRoaXMuZXJyb3JzLnB1c2goeyBmaWVsZDogJ2RvbWFpbicsIGNvZGU6ICdyZXF1aXJlZCcgfSk7XG4gICAgICB9XG4gICAgICBpZiAoIW1vZGVsLmRlc2NyaXB0aW9uIHx8IG1vZGVsLmRlc2NyaXB0aW9uLmxlbmd0aCA9PT0gMCB8fCByZWdleC50ZXN0KG1vZGVsLmRlc2NyaXB0aW9uKSkge1xuICAgICAgICB0aGlzLmVycm9ycy5wdXNoKHsgZmllbGQ6ICdkZXNjcmlwdGlvbicsIGNvZGU6ICdyZXF1aXJlZCcgfSk7XG4gICAgICB9XG4gICAgICB0aGlzLmV2ZW50RXJyb3JzQ2hhbmdlLm5leHQodGhpcy5lcnJvcnMpO1xuICAgIH1cbiAgfVxuXG4gIG1vZGlmeShwcm9wOiBzdHJpbmcsICRldmVudDogRXZlbnQpIHtcbiAgICBpZighdGhpcy5zYXZlZCl7XG4gICAgICBpZihwcm9wID09PSAnbmFtZScpe1xuICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuZXJyb3JzLmZpbmRJbmRleChlcnJvciA9PiBlcnJvci5maWVsZCA9PSAndGl0bGUnKTtcbiAgICAgICAgaWYoaW5kZXggIT09IC0xKXtcbiAgICAgICAgICB0aGlzLmVycm9ycy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBjb25zdCBuZXdWYWx1ZSA9ICRldmVudCBpbnN0YW5jZW9mIEV2ZW50ID8gJGV2ZW50LnRhcmdldD8udmFsdWUgOiAkZXZlbnQ7XG5cbiAgICAgIGlmICh0aGlzLm1vZGVsKSB7XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgaWYgKHRoaXMubW9kZWxbcHJvcF0gIT09IG5ld1ZhbHVlKSB7XG4gICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgIHRoaXMubW9kaWZpY2F0aW9uc1twcm9wXSA9IG5ld1ZhbHVlO1xuXG4gICAgICAgICAgdGhpcy5fb3V0cHV0TW9kaWZpY2F0aW9ucygpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICBkZWxldGUgdGhpcy5tb2RpZmljYXRpb25zW3Byb3BdO1xuICAgICAgICAgIHRoaXMuX291dHB1dE1vZGlmaWNhdGlvbnMoKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgcHJpdmF0ZSBfb3V0cHV0TW9kaWZpY2F0aW9ucygpIHtcbiAgICB0aGlzLnZhbGlkYXRlKHRoaXMubW9kaWZpZWRNb2RlbCk7XG4gICAgdGhpcy5tb2RpZmllZC5uZXh0KFt0aGlzLm1vZGlmaWNhdGlvbnMsIHRoaXMubW9kaWZpZWRNb2RlbF0pO1xuICB9XG5cbiAgdXBkYXRlQWN0aW9ucygkZXZlbnQ6IEh5cEFjdGlvbltdKSB7XG4gICAgaWYgKGVxdWFsKCRldmVudCwgdGhpcy5tb2RlbD8uYWN0aW9ucykpIHtcbiAgICAgIGRlbGV0ZSB0aGlzLm1vZGlmaWNhdGlvbnMuYWN0aW9ucztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5tb2RpZmljYXRpb25zLmFjdGlvbnMgPSAkZXZlbnQ7XG4gICAgfVxuICAgIHRoaXMuX291dHB1dE1vZGlmaWNhdGlvbnMoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCByZWFkb25seSBwYWRJZCA9IHBhZElkO1xufVxuIiwiPGRpdiBjbGFzcz1cIm8taHZ5LXByb2NlZHVyZS1kZXRhaWxcIj5cbiAgPGRpdj5cbiAgICA8aDE+e3sgdGl0bGUgPz8gJ0BodnkucHJvY2VkdXJlLmRldGFpbCcgfCBpMThuIH19PC9oMT5cbiAgICBAaWYobW9kaWZpZWRNb2RlbCAmJiBtb2RpZmllZE1vZGVsLmxhc3RVcGRhdGVEYXRlQWN0aXZlKSB7XG4gICAgICA8ZGl2PlxuICAgICAgICBAaWYgKG1vZGlmaWVkTW9kZWwuYWN0aXZlKSB7XG4gICAgICAgICAgUHJvY8OpZHVyZSByw6lhY3RpdsOpZSBkZXB1aXMgbGUge3sgbW9kaWZpZWRNb2RlbC5sYXN0VXBkYXRlRGF0ZUFjdGl2ZSEgfCBkYXRlOidkZC9NTS95eXl5IMOgIEhIOm1tJyB9fVxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICBQcm9jw6lkdXJlIGTDqXNhY3RpdsOpZSBkZXB1aXMgbGUge3sgbW9kaWZpZWRNb2RlbC5sYXN0VXBkYXRlRGF0ZUFjdGl2ZSEgfCBkYXRlOidkZC9NTS95eXl5IMOgIEhIOm1tJyB9fVxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiby1odnktcHJvY2VkdXJlLWRldGFpbF9fY29udGFpbmVyXCI+XG4gICAgPGRpdiBjbGFzcz1cIm8taHZ5LXByb2NlZHVyZS1kZXRhaWxfX2NvbnRhaW5lcl9fc2Nyb2xsYWJsZVwiPlxuICAgICAgQGlmIChtb2RpZmllZE1vZGVsOyBhcyBtb2RlbCkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiby1odnktcHJvY2VkdXJlLWRldGFpbF9fZm9ybVwiPlxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8aDM+e3sgJ0BodnkucHJvY2VkdXJlLmZvcm1UaXRsZScgfCBpMThuIH19PC9oMz5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwic2x0LWluZDItYnViYmxlLWNvbnRhaW5lclwiPlxuICAgICAgICAgICAgICBAaWYgKG1vZGVsLmFjdGl2ZSAhPT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgPGRpdiBbbmdDbGFzc109XCJtb2RlbC5hY3RpdmUgPyAnLWdyZWVuJyA6ICctcmVkJ1wiPnt7ICdAaHZ5LnByb2NlZHVyZS5zdGF0dXMuYWN0aXZlLicgKyBtb2RlbC5hY3RpdmUgfCBpMThuICB9fTwvZGl2PlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICA8L3NwYW4+XG4gICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgPHRhYmxlPlxuICAgICAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgICA8IS0taWRlbnRpZmlhbnQtLT5cbiAgICAgICAgICAgICAgQGlmIChtb2RlbC5pZCA+IDApIHtcbiAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICA8dGQ+e3sgJ0BodnkuZXZlbnQubG9nLmV2ZW50LmlkJyB8IGkxOG4gfX08c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj4gOjwvdGQ+XG4gICAgICAgICAgICAgICAgICA8dGQ+XG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dCB0eXBlPVwidGV4dFwiIGNsYXNzPVwiYS1mb3JtLWZpZWxkXCIgW3ZhbHVlXT1cInBhZElkLmZuKG1vZGVsLmlkKVwiIHJlYWRvbmx5IC8+XG4gICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgPCEtLXRpdHJlLS0+XG4gICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICA8dGQ+e3sgJ0BodnkucHJvY2VkdXJlLnRpdGxlJyB8IGkxOG4gfX08c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj4gOjwvdGQ+XG4gICAgICAgICAgICAgICAgPHRkPlxuICAgICAgICAgICAgICAgICAgPGlucHV0XG4gICAgICAgICAgICAgICAgICAgIHR5cGU9XCJ0ZXh0XCJcbiAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhLWZvcm0tZmllbGRcIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuLWVycm9yXT1cImhhc0Vycm9yKCduYW1lJylcIlxuICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwibW9kZWwubmFtZVwiXG4gICAgICAgICAgICAgICAgICAgIChjaGFuZ2UpPVwibW9kaWZ5KCduYW1lJywgJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgIFttYXhMZW5ndGhdPVwiNTBcIlxuICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIEBpZiAoaGFzRXJyb3IoJ3RpdGxlJykpIHtcbiAgICAgICAgICAgICAgICAgICAgPHNwYW4gY2xhc3M9XCJhLWZvcm0tZmllbGQgLWVycm9yXCI+e3sgJ0BodnkucHJvY2VkdXJlLmFscmVhZHlFeGlzdHMnIHwgaTE4biB9fTwvc3Bhbj5cbiAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICA8IS0tbWV0aWVyLS0+XG4gICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICA8dGQ+e3sgJ0BodnkuZXZlbnQuZG9tYWluLm5hbWUnIHwgaTE4biB9fTxzcGFuIGNsYXNzPVwicmVxdWlyZWRcIj4qPC9zcGFuPiA6PC90ZD5cbiAgICAgICAgICAgICAgICA8dGQ+XG4gICAgICAgICAgICAgICAgICA8cHJ5LXNlbGVjdFxuICAgICAgICAgICAgICAgICAgICBbaXRlbXNdPVwiRE9NQUlOU1wiXG4gICAgICAgICAgICAgICAgICAgIFtuZ01vZGVsXT1cIm1vZGVsLmRvbWFpblwiXG4gICAgICAgICAgICAgICAgICAgIGkxOG5QcmVmaXg9XCJAaHZ5LmV2ZW50LmRvbWFpbi5cIlxuICAgICAgICAgICAgICAgICAgICBbY2xhc3MuLWVycm9yXT1cImhhc0Vycm9yKCdkb21haW4nKVwiXG4gICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm1vZGlmeSgnZG9tYWluJywgJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgIFtkaXNhYmxlZF09XCJyZWFkb25seVwiXG4gICAgICAgICAgICAgICAgICA+PC9wcnktc2VsZWN0PlxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgIDwhLS1kZXNjcmlwdGlvbi0tPlxuICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgPHRkPnt7ICdAaHZ5LnByb2NlZHVyZS5kZXNjcmlwdGlvbicgfCBpMThuIH19PHNwYW4gY2xhc3M9XCJyZXF1aXJlZFwiPio8L3NwYW4+IDo8L3RkPlxuICAgICAgICAgICAgICAgIDx0ZD5cbiAgICAgICAgICAgICAgICAgIDx0ZXh0YXJlYVxuICAgICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJtb2RlbC5kZXNjcmlwdGlvblwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYS1mb3JtLWZpZWxkXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLi1lcnJvcl09XCJoYXNFcnJvcignZGVzY3JpcHRpb24nKVwiXG4gICAgICAgICAgICAgICAgICAgIChuZ01vZGVsQ2hhbmdlKT1cIm1vZGlmeSgnZGVzY3JpcHRpb24nLCAkZXZlbnQpXCJcbiAgICAgICAgICAgICAgICAgICAgW21heExlbmd0aF09XCIyNTZcIlxuICAgICAgICAgICAgICAgICAgICBbcmVhZG9ubHldPVwicmVhZG9ubHlcIlxuICAgICAgICAgICAgICAgICAgPjwvdGV4dGFyZWE+XG4gICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgPCEtLWNyZWF0ZXVyLS0+XG4gICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICA8dGQ+e3sgJ0BodnkucHJvY2VkdXJlLmNyZWF0b3InIHwgaTE4biB9fTxzcGFuIGNsYXNzPVwicmVxdWlyZWRcIj4qPC9zcGFuPiA6PC90ZD5cbiAgICAgICAgICAgICAgICA8dGQ+XG4gICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImEtZm9ybS1maWVsZFwiIFt2YWx1ZV09XCJtb2RlbC5jcmVhdG9yXCIgcmVhZG9ubHkgLz5cbiAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICA8IS0tZGF0ZSBkZSBjcsOpYXRpb24tLT5cbiAgICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgICA8dGQ+e3sgJ0BodnkuZXZlbnQuY3JlYXRpb25EYXRlJyB8IGkxOG4gfX08c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj4gOjwvdGQ+XG4gICAgICAgICAgICAgICAgICA8dGQ+XG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJkYXRldGltZS1sb2NhbFwiXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhLWZvcm0tZmllbGRcIlxuICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJtb2RlbC5jcmVhdGlvbkRhdGUgfCBmb3JEYXRlVGltZUxvY2FsXCJcbiAgICAgICAgICAgICAgICAgICAgICByZWFkb25seVxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICA8IS0tZGF0ZSBkZSBkZXJuacOocmUgbW9kaWZpY2F0aW9uLS0+XG4gICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgPHRkPnt7ICdAaHZ5LmV2ZW50Lmxhc3RNb2RpZmljYXRpb25EYXRlJyB8IGkxOG4gfX08c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj4gOjwvdGQ+XG4gICAgICAgICAgICAgICAgICA8dGQ+XG4gICAgICAgICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICAgICAgIHR5cGU9XCJkYXRldGltZS1sb2NhbFwiXG4gICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJhLWZvcm0tZmllbGRcIlxuICAgICAgICAgICAgICAgICAgICAgIFt2YWx1ZV09XCJtb2RlbC5sYXN0TW9kaWZpY2F0aW9uRGF0ZSB8IGZvckRhdGVUaW1lTG9jYWxcIlxuICAgICAgICAgICAgICAgICAgICAgIHJlYWRvbmx5XG4gICAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICA8L3Rib2R5PlxuICAgICAgICAgIDwvdGFibGU+XG4gICAgICAgIDwvZGl2PlxuICAgICAgICA8ZGl2IGNsYXNzPVwiby1odnktcHJvY2VkdXJlLWRldGFpbF9fYWN0aW9uc1wiPlxuICAgICAgICAgIDxoMz57eyAnQGh2eS5wcm9jZWR1cmUuYWN0aW9ucycgfCBpMThuIH19ICh7eyBtb2RlbC5hY3Rpb25zPy5sZW5ndGggfX0pPC9oMz5cbiAgICAgICAgICA8aHZ5LXByb2NlZHVyZS1hY3Rpb25zXG4gICAgICAgICAgICBbYWN0aW9uc109XCJtb2RlbC5hY3Rpb25zXCJcbiAgICAgICAgICAgIChtb2RpZmllZCk9XCJ1cGRhdGVBY3Rpb25zKCRldmVudClcIlxuICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgICAgICAgIFtyZWFkT25seUNvbW1lbnRdPVwicmVhZE9ubHlDb21tZW50XCJcbiAgICAgICAgICAgIG1vZGU9XCJtb2RlbFwiXG4gICAgICAgICAgICBbZW5hYmxlRWRpdEFjdGlvbnNdPVwidHJ1ZVwiXG4gICAgICAgICAgPjwvaHZ5LXByb2NlZHVyZS1hY3Rpb25zPlxuICAgICAgICA8L2Rpdj5cbiAgICAgIH1cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
139
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2VkdXJlLW1vZGVsLWRldGFpbC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9wcm92b2x5L2h5cGVydmlzb3Ivc3JjL2xpYi9wcm9jZWR1cmUvbW9kZWwtZGV0YWlsL3Byb2NlZHVyZS1tb2RlbC1kZXRhaWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9oeXBlcnZpc29yL3NyYy9saWIvcHJvY2VkdXJlL21vZGVsLWRldGFpbC9wcm9jZWR1cmUtbW9kZWwtZGV0YWlsLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDdkUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFFOUQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRXZELE9BQU8sS0FBSyxNQUFNLHFCQUFxQixDQUFDO0FBRXhDLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUN0RCxPQUFPLEVBQVUsTUFBTSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzlDLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLHlDQUF5QyxDQUFDO0FBQ3pFLE9BQU8sRUFBQyxLQUFLLEVBQUMsTUFBTSxNQUFNLENBQUM7Ozs7Ozs7O0FBTTNCLE1BQU0sT0FBTyw2QkFBOEIsU0FBUSx3QkFBd0I7SUFjekUsSUFBYSxtQkFBbUIsQ0FBQyxHQUFRO1FBQ3ZDLElBQUksQ0FBQyxhQUFhLEdBQUcsRUFBRSxDQUFDO1FBQ3hCLElBQUksQ0FBQyxvQkFBb0IsRUFBRSxDQUFDO0lBQzlCLENBQUM7SUFFRCxJQUFJLGFBQWE7UUFDZixPQUFPLEVBQUUsR0FBRyxJ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QkFBaUI7c0JBQTFCLE1BQU07Z0JBQ0csUUFBUTtzQkFBakIsTUFBTTtnQkFFRSxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLGVBQWU7c0JBQXZCLEtBQUs7Z0JBRU8sbUJBQW1CO3NCQUEvQixLQUFLIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBFdmVudEVtaXR0ZXIsIElucHV0LCBPdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFN1YnNjcmlwdGlvbm5lckRpcmVjdGl2ZSB9IGZyb20gJ0Bwcm92b2x5L2Rhc2hib2FyZCc7XG5pbXBvcnQgeyBIeXBQcm9jZWR1cmVNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVsL3Byb2NlZHVyZS9oeXAtcHJvY2VkdXJlLW1vZGVsLmludGVyZmFjZSc7XG5pbXBvcnQgeyBET01BSU5TIH0gZnJvbSAnLi4vLi4vbW9kZWwvZG9tYWlucy5jb25zdGFudCc7XG5pbXBvcnQgeyBTdG9yZSB9IGZyb20gJ0BuZ3J4L3N0b3JlJztcbmltcG9ydCBlcXVhbCBmcm9tICdmYXN0LWRlZXAtZXF1YWwvZXM2JztcbmltcG9ydCB7IEh5cEFjdGlvbiB9IGZyb20gJy4uLy4uL21vZGVsL3Byb2NlZHVyZS9oeXAtYWN0aW9uLmludGVyZmFjZSc7XG5pbXBvcnQgeyBwYWRJZCB9IGZyb20gJy4uLy4uL2dlbmVyYWwvcGFkLWlkLmZ1bmN0aW9uJztcbmltcG9ydCB7QWN0aW9ucywgb2ZUeXBlfSBmcm9tIFwiQG5ncngvZWZmZWN0c1wiO1xuaW1wb3J0IHtQcm9jZWR1cmVBY3Rpb25zfSBmcm9tIFwiLi4vLi4vc3RvcmUvcHJvY2VkdXJlL3Byb2NlZHVyZS5hY3Rpb25zXCI7XG5pbXBvcnQge2RlbGF5fSBmcm9tIFwicnhqc1wiO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdodnktcHJvY2VkdXJlLW1vZGVsLWRldGFpbCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9wcm9jZWR1cmUtbW9kZWwtZGV0YWlsLmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQcm9jZWR1cmVNb2RlbERldGFpbENvbXBvbmVudCBleHRlbmRzIFN1YnNjcmlwdGlvbm5lckRpcmVjdGl2ZSB7XG4gIEBJbnB1dCgpIG1vZGVsPzogSHlwUHJvY2VkdXJlTW9kZWw7XG4gIEBJbnB1dCgpIHVzZXJuYW1lOiBzdHJpbmcgPSAneHh4JztcbiAgbW9kaWZpY2F0aW9uczogUGFydGlhbDxIeXBQcm9jZWR1cmVNb2RlbD4gPSB7fTtcbiAgQElucHV0KCkgdGl0bGU/OiBzdHJpbmc7XG4gIHNhdmVkID0gZmFsc2U7XG4gIGVycm9yczogeyBmaWVsZDogc3RyaW5nOyBjb2RlOiBzdHJpbmcgfVtdID0gW107XG4gIEBJbnB1dCgpIGV2ZW50RXJyb3JzICA6IHsgZmllbGQ6IHN0cmluZzsgY29kZTogc3RyaW5nIH1bXSA9IFtdO1xuICBAT3V0cHV0KCkgZXZlbnRFcnJvcnNDaGFuZ2UgPSBuZXcgRXZlbnRFbWl0dGVyPHsgZmllbGQ6IHN0cmluZzsgY29kZTogc3RyaW5nIH1bXT4oKTtcbiAgQE91dHB1dCgpIG1vZGlmaWVkID0gbmV3IEV2ZW50RW1pdHRlcjxbUGFydGlhbDxIeXBQcm9jZWR1cmVNb2RlbD4sIEh5cFByb2NlZHVyZU1vZGVsXT4oKTtcbiAgcHJvdGVjdGVkIHJlYWRvbmx5IERPTUFJTlMgPSBET01BSU5TLnZhbHVlcztcbiAgQElucHV0KCkgcmVhZG9ubHkgPSBmYWxzZTtcbiAgQElucHV0KCkgcmVhZE9ubHlDb21tZW50ID0gZmFsc2U7XG5cbiAgQElucHV0KCkgc2V0IGNhbmNlbE1vZGlmaWNhdGlvbnMoZXZ0OiBhbnkpIHtcbiAgICB0aGlzLm1vZGlmaWNhdGlvbnMgPSB7fTtcbiAgICB0aGlzLl9vdXRwdXRNb2RpZmljYXRpb25zKCk7XG4gIH1cblxuICBnZXQgbW9kaWZpZWRNb2RlbCgpIHtcbiAgICByZXR1cm4geyAuLi50aGlzLm1vZGVsLCAuLi4odGhpcy5tb2RpZmljYXRpb25zID8/IHt9KSB9IGFzIEh5cFByb2NlZHVyZU1vZGVsO1xuICB9XG5cbiAgY29uc3RydWN0b3IocHJpdmF0ZSBhY3Rpb25zJDogQWN0aW9ucykge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgICAgb2ZUeXBlKFByb2NlZHVyZUFjdGlvbnMuc2F2ZSlcbiAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgICAgbmV4dDogcmVzdWx0ID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2F2ZWQgPSB0cnVlO1xuICAgICAgICAgIH1cbiAgICAgICAgfSlcbiAgICApXG4gICAgdGhpcy5zdWJzY3JpcHRpb25zLmFkZChcbiAgICAgIHRoaXMuYWN0aW9ucyQucGlwZShcbiAgICAgICAgb2ZUeXBlKFByb2NlZHVyZUFjdGlvbnMuc2F2ZVN1Y2Nlc3MpLFxuICAgICAgICBkZWxheSgxMDAwKSxcbiAgICAgIClcbiAgICAgICAgLnN1YnNjcmliZSh7XG4gICAgICAgICAgbmV4dDogcmVzdWx0ID0+IHtcbiAgICAgICAgICAgIHRoaXMuc2F2ZWQgPSBmYWxzZTtcbiAgICAgICAgICB9XG4gICAgICAgIH0pXG4gICAgKVxuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLmFjdGlvbnMkLnBpcGUoXG4gICAgICAgIG9mVHlwZShQcm9jZWR1cmVBY3Rpb25zLnNhdmVGYWlsdXJlKSxcbiAgICAgICAgZGVsYXkoMTAwMCksXG4gICAgICApXG4gICAgICAgIC5zdWJzY3JpYmUoe1xuICAgICAgICAgIG5leHQ6IHJlc3VsdCA9PiB7XG4gICAgICAgICAgICB0aGlzLnNhdmVkID0gZmFsc2U7XG4gICAgICAgICAgfVxuICAgICAgICB9KVxuICAgIClcbiAgfVxuXG4gIGhhc0Vycm9yKHByb3A6IHN0cmluZykge1xuICAgIHJldHVybiB0aGlzLmVycm9ycy5maW5kKChlcnIpID0+IGVyci5maWVsZCA9PT0gcHJvcCkgPz8gZmFsc2U7XG4gIH1cblxuICB2YWxpZGF0ZShtb2RlbDogSHlwUHJvY2VkdXJlTW9kZWwpIHtcbiAgICBpZiAoISFtb2RlbCkge1xuICAgICAgdGhpcy5lcnJvcnMgPSBbXTtcbiAgICAgIGNvbnN0IHJlZ2V4ID0gbmV3IFJlZ0V4cCggL15cXHMrJC8pO1xuICAgICAgaWYgKCFtb2RlbC5uYW1lIHx8IG1vZGVsLm5hbWUubGVuZ3RoID09PSAwIHx8IHJlZ2V4LnRlc3QobW9kZWwubmFtZSkpIHtcbiAgICAgICAgdGhpcy5lcnJvcnMucHVzaCh7IGZpZWxkOiAnbmFtZScsIGNvZGU6ICdyZXF1aXJlZCcgfSk7XG4gICAgICB9XG4gICAgICBpZiAoIW1vZGVsLmRvbWFpbiB8fCBtb2RlbC5kb21haW4ubGVuZ3RoID09PSAwKSB7XG4gICAgICAgIHRoaXMuZXJyb3JzLnB1c2goeyBmaWVsZDogJ2RvbWFpbicsIGNvZGU6ICdyZXF1aXJlZCcgfSk7XG4gICAgICB9XG4gICAgICBpZiAoIW1vZGVsLmRlc2NyaXB0aW9uIHx8IG1vZGVsLmRlc2NyaXB0aW9uLmxlbmd0aCA9PT0gMCB8fCByZWdleC50ZXN0KG1vZGVsLmRlc2NyaXB0aW9uKSkge1xuICAgICAgICB0aGlzLmVycm9ycy5wdXNoKHsgZmllbGQ6ICdkZXNjcmlwdGlvbicsIGNvZGU6ICdyZXF1aXJlZCcgfSk7XG4gICAgICB9XG4gICAgICB0aGlzLmV2ZW50RXJyb3JzQ2hhbmdlLm5leHQodGhpcy5lcnJvcnMpO1xuICAgIH1cbiAgfVxuXG4gIG1vZGlmeShwcm9wOiBzdHJpbmcsICRldmVudDogRXZlbnQpIHtcbiAgICBpZighdGhpcy5zYXZlZCl7XG4gICAgICBpZihwcm9wID09PSAnbmFtZScpe1xuICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMuZXJyb3JzLmZpbmRJbmRleChlcnJvciA9PiBlcnJvci5maWVsZCA9PSAndGl0bGUnKTtcbiAgICAgICAgaWYoaW5kZXggIT09IC0xKXtcbiAgICAgICAgICB0aGlzLmVycm9ycy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICAvLyBAdHMtaWdub3JlXG4gICAgICBjb25zdCBuZXdWYWx1ZSA9ICRldmVudCBpbnN0YW5jZW9mIEV2ZW50ID8gJGV2ZW50LnRhcmdldD8udmFsdWUgOiAkZXZlbnQ7XG5cbiAgICAgIGlmICh0aGlzLm1vZGVsKSB7XG4gICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgaWYgKHRoaXMubW9kZWxbcHJvcF0gIT09IG5ld1ZhbHVlKSB7XG4gICAgICAgICAgLy8gQHRzLWlnbm9yZVxuICAgICAgICAgIHRoaXMubW9kaWZpY2F0aW9uc1twcm9wXSA9IG5ld1ZhbHVlO1xuXG4gICAgICAgICAgdGhpcy5fb3V0cHV0TW9kaWZpY2F0aW9ucygpO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgIC8vIEB0cy1pZ25vcmVcbiAgICAgICAgICBkZWxldGUgdGhpcy5tb2RpZmljYXRpb25zW3Byb3BdO1xuICAgICAgICAgIHRoaXMuX291dHB1dE1vZGlmaWNhdGlvbnMoKTtcbiAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICB9XG5cbiAgcHJpdmF0ZSBfb3V0cHV0TW9kaWZpY2F0aW9ucygpIHtcbiAgICB0aGlzLnZhbGlkYXRlKHRoaXMubW9kaWZpZWRNb2RlbCk7XG4gICAgdGhpcy5tb2RpZmllZC5uZXh0KFt0aGlzLm1vZGlmaWNhdGlvbnMsIHRoaXMubW9kaWZpZWRNb2RlbF0pO1xuICB9XG5cbiAgdXBkYXRlQWN0aW9ucygkZXZlbnQ6IEh5cEFjdGlvbltdKSB7XG4gICAgaWYgKGVxdWFsKCRldmVudCwgdGhpcy5tb2RlbD8uYWN0aW9ucykpIHtcbiAgICAgIGRlbGV0ZSB0aGlzLm1vZGlmaWNhdGlvbnMuYWN0aW9ucztcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5tb2RpZmljYXRpb25zLmFjdGlvbnMgPSAkZXZlbnQ7XG4gICAgfVxuICAgIHRoaXMuX291dHB1dE1vZGlmaWNhdGlvbnMoKTtcbiAgfVxuXG4gIHByb3RlY3RlZCByZWFkb25seSBwYWRJZCA9IHBhZElkO1xufVxuIiwiPGRpdiBjbGFzcz1cIm8taHZ5LXByb2NlZHVyZS1kZXRhaWxcIj5cbiAgPGRpdj5cbiAgICA8aDE+e3sgdGl0bGUgPz8gJ0BodnkucHJvY2VkdXJlLmRldGFpbCcgfCBpMThuIH19PC9oMT5cbiAgICBAaWYobW9kaWZpZWRNb2RlbCAmJiBtb2RpZmllZE1vZGVsLmxhc3RVcGRhdGVEYXRlQWN0aXZlKSB7XG4gICAgICA8ZGl2PlxuICAgICAgICBAaWYgKG1vZGlmaWVkTW9kZWwuYWN0aXZlKSB7XG4gICAgICAgICAgUHJvY8OpZHVyZSByw6lhY3RpdsOpZSBkZXB1aXMgbGUge3sgbW9kaWZpZWRNb2RlbC5sYXN0VXBkYXRlRGF0ZUFjdGl2ZSEgfCBkYXRlOidkZC9NTS95eXl5IMOgIEhIOm1tJyB9fVxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICBQcm9jw6lkdXJlIGTDqXNhY3RpdsOpZSBkZXB1aXMgbGUge3sgbW9kaWZpZWRNb2RlbC5sYXN0VXBkYXRlRGF0ZUFjdGl2ZSEgfCBkYXRlOidkZC9NTS95eXl5IMOgIEhIOm1tJyB9fVxuICAgICAgICB9XG4gICAgICA8L2Rpdj5cbiAgICB9XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiby1odnktcHJvY2VkdXJlLWRldGFpbF9fY29udGFpbmVyXCI+XG4gICAgPGRpdiBjbGFzcz1cIm8taHZ5LXByb2NlZHVyZS1kZXRhaWxfX2NvbnRhaW5lcl9fc2Nyb2xsYWJsZVwiPlxuICAgICAgQGlmIChtb2RpZmllZE1vZGVsOyBhcyBtb2RlbCkge1xuICAgICAgICA8ZGl2IGNsYXNzPVwiby1odnktcHJvY2VkdXJlLWRldGFpbF9fZm9ybVwiPlxuICAgICAgICAgIDxkaXY+XG4gICAgICAgICAgICA8aDM+e3sgJ0BodnkucHJvY2VkdXJlLmZvcm1UaXRsZScgfCBpMThuIH19PC9oMz5cbiAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiZGFzaGJvYXJkLWJ1YmJsZS1jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgQGlmIChtb2RlbC5hY3RpdmUgIT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgIDxkaXYgW25nQ2xhc3NdPVwibW9kZWwuYWN0aXZlID8gJy1ncmVlbicgOiAnLXJlZCdcIj57eyAnQGh2eS5wcm9jZWR1cmUuc3RhdHVzLmFjdGl2ZS4nICsgbW9kZWwuYWN0aXZlIHwgaTE4biAgfX08L2Rpdj5cbiAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgIDx0YWJsZT5cbiAgICAgICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgICAgPCEtLWlkZW50aWZpYW50LS0+XG4gICAgICAgICAgICAgIEBpZiAobW9kZWwuaWQgPiAwKSB7XG4gICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgPHRkPnt7ICdAaHZ5LmV2ZW50LmxvZy5ldmVudC5pZCcgfCBpMThuIH19PHNwYW4gY2xhc3M9XCJyZXF1aXJlZFwiPio8L3NwYW4+IDo8L3RkPlxuICAgICAgICAgICAgICAgICAgPHRkPlxuICAgICAgICAgICAgICAgICAgICA8aW5wdXQgdHlwZT1cInRleHRcIiBjbGFzcz1cImEtZm9ybS1maWVsZFwiIFt2YWx1ZV09XCJwYWRJZC5mbihtb2RlbC5pZClcIiByZWFkb25seSAvPlxuICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIDwhLS10aXRyZS0tPlxuICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgPHRkPnt7ICdAaHZ5LnByb2NlZHVyZS50aXRsZScgfCBpMThuIH19PHNwYW4gY2xhc3M9XCJyZXF1aXJlZFwiPio8L3NwYW4+IDo8L3RkPlxuICAgICAgICAgICAgICAgIDx0ZD5cbiAgICAgICAgICAgICAgICAgIDxpbnB1dFxuICAgICAgICAgICAgICAgICAgICB0eXBlPVwidGV4dFwiXG4gICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYS1mb3JtLWZpZWxkXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLi1lcnJvcl09XCJoYXNFcnJvcignbmFtZScpXCJcbiAgICAgICAgICAgICAgICAgICAgW3ZhbHVlXT1cIm1vZGVsLm5hbWVcIlxuICAgICAgICAgICAgICAgICAgICAoY2hhbmdlKT1cIm1vZGlmeSgnbmFtZScsICRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICBbbWF4TGVuZ3RoXT1cIjUwXCJcbiAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgICAgICAgICAgICAgIC8+XG4gICAgICAgICAgICAgICAgICBAaWYgKGhhc0Vycm9yKCd0aXRsZScpKSB7XG4gICAgICAgICAgICAgICAgICAgIDxzcGFuIGNsYXNzPVwiYS1mb3JtLWZpZWxkIC1lcnJvclwiPnt7ICdAaHZ5LnByb2NlZHVyZS5hbHJlYWR5RXhpc3RzJyB8IGkxOG4gfX08L3NwYW4+XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgPCEtLW1ldGllci0tPlxuICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgPHRkPnt7ICdAaHZ5LmV2ZW50LmRvbWFpbi5uYW1lJyB8IGkxOG4gfX08c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj4gOjwvdGQ+XG4gICAgICAgICAgICAgICAgPHRkPlxuICAgICAgICAgICAgICAgICAgPHByeS1zZWxlY3RcbiAgICAgICAgICAgICAgICAgICAgW2l0ZW1zXT1cIkRPTUFJTlNcIlxuICAgICAgICAgICAgICAgICAgICBbbmdNb2RlbF09XCJtb2RlbC5kb21haW5cIlxuICAgICAgICAgICAgICAgICAgICBpMThuUHJlZml4PVwiQGh2eS5ldmVudC5kb21haW4uXCJcbiAgICAgICAgICAgICAgICAgICAgW2NsYXNzLi1lcnJvcl09XCJoYXNFcnJvcignZG9tYWluJylcIlxuICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJtb2RpZnkoJ2RvbWFpbicsICRldmVudClcIlxuICAgICAgICAgICAgICAgICAgICBbZGlzYWJsZWRdPVwicmVhZG9ubHlcIlxuICAgICAgICAgICAgICAgICAgPjwvcHJ5LXNlbGVjdD5cbiAgICAgICAgICAgICAgICA8L3RkPlxuICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgICA8IS0tZGVzY3JpcHRpb24tLT5cbiAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgIDx0ZD57eyAnQGh2eS5wcm9jZWR1cmUuZGVzY3JpcHRpb24nIHwgaTE4biB9fTxzcGFuIGNsYXNzPVwicmVxdWlyZWRcIj4qPC9zcGFuPiA6PC90ZD5cbiAgICAgICAgICAgICAgICA8dGQ+XG4gICAgICAgICAgICAgICAgICA8dGV4dGFyZWFcbiAgICAgICAgICAgICAgICAgICAgW25nTW9kZWxdPVwibW9kZWwuZGVzY3JpcHRpb25cIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImEtZm9ybS1maWVsZFwiXG4gICAgICAgICAgICAgICAgICAgIFtjbGFzcy4tZXJyb3JdPVwiaGFzRXJyb3IoJ2Rlc2NyaXB0aW9uJylcIlxuICAgICAgICAgICAgICAgICAgICAobmdNb2RlbENoYW5nZSk9XCJtb2RpZnkoJ2Rlc2NyaXB0aW9uJywgJGV2ZW50KVwiXG4gICAgICAgICAgICAgICAgICAgIFttYXhMZW5ndGhdPVwiMjU2XCJcbiAgICAgICAgICAgICAgICAgICAgW3JlYWRvbmx5XT1cInJlYWRvbmx5XCJcbiAgICAgICAgICAgICAgICAgID48L3RleHRhcmVhPlxuICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgIDwvdHI+XG4gICAgICAgICAgICAgIDwhLS1jcmVhdGV1ci0tPlxuICAgICAgICAgICAgICA8dHI+XG4gICAgICAgICAgICAgICAgPHRkPnt7ICdAaHZ5LnByb2NlZHVyZS5jcmVhdG9yJyB8IGkxOG4gfX08c3BhbiBjbGFzcz1cInJlcXVpcmVkXCI+Kjwvc3Bhbj4gOjwvdGQ+XG4gICAgICAgICAgICAgICAgPHRkPlxuICAgICAgICAgICAgICAgICAgPGlucHV0IHR5cGU9XCJ0ZXh0XCIgY2xhc3M9XCJhLWZvcm0tZmllbGRcIiBbdmFsdWVdPVwibW9kZWwuY3JlYXRvclwiIHJlYWRvbmx5IC8+XG4gICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgPCEtLWRhdGUgZGUgY3LDqWF0aW9uLS0+XG4gICAgICAgICAgICAgICAgPHRyPlxuICAgICAgICAgICAgICAgICAgPHRkPnt7ICdAaHZ5LmV2ZW50LmNyZWF0aW9uRGF0ZScgfCBpMThuIH19PHNwYW4gY2xhc3M9XCJyZXF1aXJlZFwiPio8L3NwYW4+IDo8L3RkPlxuICAgICAgICAgICAgICAgICAgPHRkPlxuICAgICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIlxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYS1mb3JtLWZpZWxkXCJcbiAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwibW9kZWwuY3JlYXRpb25EYXRlIHwgZm9yRGF0ZVRpbWVMb2NhbFwiXG4gICAgICAgICAgICAgICAgICAgICAgcmVhZG9ubHlcbiAgICAgICAgICAgICAgICAgICAgLz5cbiAgICAgICAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICAgICAgPC90cj5cbiAgICAgICAgICAgICAgPCEtLWRhdGUgZGUgZGVybmnDqHJlIG1vZGlmaWNhdGlvbi0tPlxuICAgICAgICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgICAgICAgIDx0ZD57eyAnQGh2eS5ldmVudC5sYXN0TW9kaWZpY2F0aW9uRGF0ZScgfCBpMThuIH19PHNwYW4gY2xhc3M9XCJyZXF1aXJlZFwiPio8L3NwYW4+IDo8L3RkPlxuICAgICAgICAgICAgICAgICAgPHRkPlxuICAgICAgICAgICAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiZGF0ZXRpbWUtbG9jYWxcIlxuICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYS1mb3JtLWZpZWxkXCJcbiAgICAgICAgICAgICAgICAgICAgICBbdmFsdWVdPVwibW9kZWwubGFzdE1vZGlmaWNhdGlvbkRhdGUgfCBmb3JEYXRlVGltZUxvY2FsXCJcbiAgICAgICAgICAgICAgICAgICAgICByZWFkb25seVxuICAgICAgICAgICAgICAgICAgICAvPlxuICAgICAgICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgICAgICA8L3RyPlxuICAgICAgICAgICAgPC90Ym9keT5cbiAgICAgICAgICA8L3RhYmxlPlxuICAgICAgICA8L2Rpdj5cbiAgICAgICAgPGRpdiBjbGFzcz1cIm8taHZ5LXByb2NlZHVyZS1kZXRhaWxfX2FjdGlvbnNcIj5cbiAgICAgICAgICA8aDM+e3sgJ0BodnkucHJvY2VkdXJlLmFjdGlvbnMnIHwgaTE4biB9fSAoe3sgbW9kZWwuYWN0aW9ucz8ubGVuZ3RoIH19KTwvaDM+XG4gICAgICAgICAgPGh2eS1wcm9jZWR1cmUtYWN0aW9uc1xuICAgICAgICAgICAgW2FjdGlvbnNdPVwibW9kZWwuYWN0aW9uc1wiXG4gICAgICAgICAgICAobW9kaWZpZWQpPVwidXBkYXRlQWN0aW9ucygkZXZlbnQpXCJcbiAgICAgICAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICAgICAgICBbcmVhZE9ubHlDb21tZW50XT1cInJlYWRPbmx5Q29tbWVudFwiXG4gICAgICAgICAgICBtb2RlPVwibW9kZWxcIlxuICAgICAgICAgICAgW2VuYWJsZUVkaXRBY3Rpb25zXT1cInRydWVcIlxuICAgICAgICAgID48L2h2eS1wcm9jZWR1cmUtYWN0aW9ucz5cbiAgICAgICAgPC9kaXY+XG4gICAgICB9XG4gICAgPC9kaXY+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -41,15 +41,15 @@ export class ProcedureListComponent extends SubscriptionnerDirective {
41
41
  return this.router.navigate(this.PROCEDURE_LINK.fn(procedure, this.store));
42
42
  }
43
43
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: ProcedureListComponent, deps: [{ token: i1.Store }, { token: i2.Router }, { token: i3.InfiniteScrollService }], target: i0.ɵɵFactoryTarget.Component }); }
44
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: ProcedureListComponent, selector: "hvy-procedure-model-list", inputs: { placeholder: "placeholder" }, viewQueries: [{ propertyName: "scrollable", first: true, predicate: ["scrollable"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"o-procedure-list\">\n <div class=\"m-form-label-field o-procedure-list__action\">\n <hvy-immediate-filters [filterSet]=\"'procedure'\">\n <hvy-text-filter prop=\"search\" #filter [placeholder]=\"placeholder\"></hvy-text-filter>\n <hvy-choice-filter\n i18nPrefix=\"@hvy.event.domain.\"\n label=\"@hvy.event.domain.name\"\n [choices]=\"DOMAINS\"\n prop=\"domain\"\n #filter\n ></hvy-choice-filter>\n </hvy-immediate-filters>\n </div>\n <div class=\"o-procedure-list__table\" #scrollable>\n <table class=\"o-hvy-events-table\">\n <thead>\n <tr class=\"o-hvy-events-table__header\">\n <th>\n <hvy-procedure-column-order field=\"id\">{{ '@hvy.procedure.id' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"name\">{{ '@hvy.procedure.title' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"domain\">{{ '@hvy.procedure.domain' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"useCount\"\n >{{ '@hvy.procedure.useCount' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creator\"\n >{{ '@hvy.procedure.author' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creationDate\"\n >{{ '@hvy.event.creationDateTable' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"lastModificationDate\">\n <span>{{ '@hvy.event.lastModificationDateTable' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th>\n <hvy-procedure-column-order field=\"etat\">\n <span>{{ '@hvy.procedure.etat' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n @for (procedure of procedures$ | async; track procedure.id) {\n <tr class=\"o-hvy-events-table__line\" (click)=\"goTo(procedure)\">\n <td class=\"o-hvy-events-table__line__cell\">{{ padId.fn(procedure.id) }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.name }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ '@hvy.event.domain.' + procedure.domain | i18n }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.useCount }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creator }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creationDate | displayLocaleDatetime }}</td>\n <td class=\"o-hvy-events-table__line__cell\">\n {{ procedure.lastModificationDate | displayLocaleDatetime }}\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <span class=\"slt-ind2-bubble-container\">\n <div [ngClass]=\"procedure.active ? '-green' : '-red'\">{{ '@hvy.procedure.status.active.' + procedure.active | i18n }}</div>\n </span>\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <a [routerLink]=\"PROCEDURE_LINK.fn(procedure, store)\">\n <div class=\"consult-link\" [title]=\"'@hvy.action.consult' | i18n\">\n <pry-icon iconSvg=\"eye\" [height]=\"30\" [width]=\"40\"></pry-icon>\n </div>\n </a>\n </td>\n </tr>\n } @empty {\n <tr>\n <td class=\"o-hvy-events-table__empty\" colspan=\"50\">\n <div>{{ '@hvy.procedure.noContent' | i18n }}</div>\n <div>\n <ng-content></ng-content>\n </div>\n </td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i6.TextFilterComponent, selector: "hvy-text-filter", inputs: ["placeholder"] }, { kind: "component", type: i7.ChoiceFilterComponent, selector: "hvy-choice-filter", inputs: ["allLabel", "label", "i18nPrefix", "addNonLeaves", "choices"] }, { kind: "component", type: i8.ProcedureColumnOrderComponent, selector: "hvy-procedure-column-order" }, { kind: "component", type: i9.ImmediateFiltersComponent, selector: "hvy-immediate-filters", inputs: ["filterSet", "delay"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.I18nPipe, name: "i18n" }, { kind: "pipe", type: i10.DisplayLocaleDateTime, name: "displayLocaleDatetime" }] }); }
44
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: ProcedureListComponent, selector: "hvy-procedure-model-list", inputs: { placeholder: "placeholder" }, viewQueries: [{ propertyName: "scrollable", first: true, predicate: ["scrollable"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"o-procedure-list\">\n <div class=\"m-form-label-field o-procedure-list__action\">\n <hvy-immediate-filters [filterSet]=\"'procedure'\">\n <hvy-text-filter prop=\"search\" #filter [placeholder]=\"placeholder\"></hvy-text-filter>\n <hvy-choice-filter\n i18nPrefix=\"@hvy.event.domain.\"\n label=\"@hvy.event.domain.name\"\n [choices]=\"DOMAINS\"\n prop=\"domain\"\n #filter\n ></hvy-choice-filter>\n </hvy-immediate-filters>\n </div>\n <div class=\"o-procedure-list__table\" #scrollable>\n <table class=\"o-hvy-events-table\">\n <thead>\n <tr class=\"o-hvy-events-table__header\">\n <th>\n <hvy-procedure-column-order field=\"id\">{{ '@hvy.procedure.id' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"name\">{{ '@hvy.procedure.title' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"domain\">{{ '@hvy.procedure.domain' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"useCount\"\n >{{ '@hvy.procedure.useCount' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creator\"\n >{{ '@hvy.procedure.author' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creationDate\"\n >{{ '@hvy.event.creationDateTable' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"lastModificationDate\">\n <span>{{ '@hvy.event.lastModificationDateTable' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th>\n <hvy-procedure-column-order field=\"etat\">\n <span>{{ '@hvy.procedure.etat' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n @for (procedure of procedures$ | async; track procedure.id) {\n <tr class=\"o-hvy-events-table__line\" (click)=\"goTo(procedure)\">\n <td class=\"o-hvy-events-table__line__cell\">{{ padId.fn(procedure.id) }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.name }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ '@hvy.event.domain.' + procedure.domain | i18n }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.useCount }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creator }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creationDate | displayLocaleDatetime }}</td>\n <td class=\"o-hvy-events-table__line__cell\">\n {{ procedure.lastModificationDate | displayLocaleDatetime }}\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <span class=\"dashboard-bubble-container\">\n <div [ngClass]=\"procedure.active ? '-green' : '-red'\">{{ '@hvy.procedure.status.active.' + procedure.active | i18n }}</div>\n </span>\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <a [routerLink]=\"PROCEDURE_LINK.fn(procedure, store)\">\n <div class=\"consult-link\" [title]=\"'@hvy.action.consult' | i18n\">\n <pry-icon iconSvg=\"eye\" [height]=\"30\" [width]=\"40\"></pry-icon>\n </div>\n </a>\n </td>\n </tr>\n } @empty {\n <tr>\n <td class=\"o-hvy-events-table__empty\" colspan=\"50\">\n <div>{{ '@hvy.procedure.noContent' | i18n }}</div>\n <div>\n <ng-content></ng-content>\n </div>\n </td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i4.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: i6.TextFilterComponent, selector: "hvy-text-filter", inputs: ["placeholder"] }, { kind: "component", type: i7.ChoiceFilterComponent, selector: "hvy-choice-filter", inputs: ["allLabel", "label", "i18nPrefix", "addNonLeaves", "choices"] }, { kind: "component", type: i8.ProcedureColumnOrderComponent, selector: "hvy-procedure-column-order" }, { kind: "component", type: i9.ImmediateFiltersComponent, selector: "hvy-immediate-filters", inputs: ["filterSet", "delay"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i4.I18nPipe, name: "i18n" }, { kind: "pipe", type: i10.DisplayLocaleDateTime, name: "displayLocaleDatetime" }] }); }
45
45
  }
46
46
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: ProcedureListComponent, decorators: [{
47
47
  type: Component,
48
- args: [{ selector: 'hvy-procedure-model-list', template: "<div class=\"o-procedure-list\">\n <div class=\"m-form-label-field o-procedure-list__action\">\n <hvy-immediate-filters [filterSet]=\"'procedure'\">\n <hvy-text-filter prop=\"search\" #filter [placeholder]=\"placeholder\"></hvy-text-filter>\n <hvy-choice-filter\n i18nPrefix=\"@hvy.event.domain.\"\n label=\"@hvy.event.domain.name\"\n [choices]=\"DOMAINS\"\n prop=\"domain\"\n #filter\n ></hvy-choice-filter>\n </hvy-immediate-filters>\n </div>\n <div class=\"o-procedure-list__table\" #scrollable>\n <table class=\"o-hvy-events-table\">\n <thead>\n <tr class=\"o-hvy-events-table__header\">\n <th>\n <hvy-procedure-column-order field=\"id\">{{ '@hvy.procedure.id' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"name\">{{ '@hvy.procedure.title' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"domain\">{{ '@hvy.procedure.domain' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"useCount\"\n >{{ '@hvy.procedure.useCount' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creator\"\n >{{ '@hvy.procedure.author' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creationDate\"\n >{{ '@hvy.event.creationDateTable' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"lastModificationDate\">\n <span>{{ '@hvy.event.lastModificationDateTable' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th>\n <hvy-procedure-column-order field=\"etat\">\n <span>{{ '@hvy.procedure.etat' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n @for (procedure of procedures$ | async; track procedure.id) {\n <tr class=\"o-hvy-events-table__line\" (click)=\"goTo(procedure)\">\n <td class=\"o-hvy-events-table__line__cell\">{{ padId.fn(procedure.id) }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.name }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ '@hvy.event.domain.' + procedure.domain | i18n }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.useCount }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creator }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creationDate | displayLocaleDatetime }}</td>\n <td class=\"o-hvy-events-table__line__cell\">\n {{ procedure.lastModificationDate | displayLocaleDatetime }}\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <span class=\"slt-ind2-bubble-container\">\n <div [ngClass]=\"procedure.active ? '-green' : '-red'\">{{ '@hvy.procedure.status.active.' + procedure.active | i18n }}</div>\n </span>\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <a [routerLink]=\"PROCEDURE_LINK.fn(procedure, store)\">\n <div class=\"consult-link\" [title]=\"'@hvy.action.consult' | i18n\">\n <pry-icon iconSvg=\"eye\" [height]=\"30\" [width]=\"40\"></pry-icon>\n </div>\n </a>\n </td>\n </tr>\n } @empty {\n <tr>\n <td class=\"o-hvy-events-table__empty\" colspan=\"50\">\n <div>{{ '@hvy.procedure.noContent' | i18n }}</div>\n <div>\n <ng-content></ng-content>\n </div>\n </td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n</div>\n" }]
48
+ args: [{ selector: 'hvy-procedure-model-list', template: "<div class=\"o-procedure-list\">\n <div class=\"m-form-label-field o-procedure-list__action\">\n <hvy-immediate-filters [filterSet]=\"'procedure'\">\n <hvy-text-filter prop=\"search\" #filter [placeholder]=\"placeholder\"></hvy-text-filter>\n <hvy-choice-filter\n i18nPrefix=\"@hvy.event.domain.\"\n label=\"@hvy.event.domain.name\"\n [choices]=\"DOMAINS\"\n prop=\"domain\"\n #filter\n ></hvy-choice-filter>\n </hvy-immediate-filters>\n </div>\n <div class=\"o-procedure-list__table\" #scrollable>\n <table class=\"o-hvy-events-table\">\n <thead>\n <tr class=\"o-hvy-events-table__header\">\n <th>\n <hvy-procedure-column-order field=\"id\">{{ '@hvy.procedure.id' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"name\">{{ '@hvy.procedure.title' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"domain\">{{ '@hvy.procedure.domain' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"useCount\"\n >{{ '@hvy.procedure.useCount' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creator\"\n >{{ '@hvy.procedure.author' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creationDate\"\n >{{ '@hvy.event.creationDateTable' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"lastModificationDate\">\n <span>{{ '@hvy.event.lastModificationDateTable' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th>\n <hvy-procedure-column-order field=\"etat\">\n <span>{{ '@hvy.procedure.etat' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n @for (procedure of procedures$ | async; track procedure.id) {\n <tr class=\"o-hvy-events-table__line\" (click)=\"goTo(procedure)\">\n <td class=\"o-hvy-events-table__line__cell\">{{ padId.fn(procedure.id) }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.name }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ '@hvy.event.domain.' + procedure.domain | i18n }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.useCount }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creator }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creationDate | displayLocaleDatetime }}</td>\n <td class=\"o-hvy-events-table__line__cell\">\n {{ procedure.lastModificationDate | displayLocaleDatetime }}\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <span class=\"dashboard-bubble-container\">\n <div [ngClass]=\"procedure.active ? '-green' : '-red'\">{{ '@hvy.procedure.status.active.' + procedure.active | i18n }}</div>\n </span>\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <a [routerLink]=\"PROCEDURE_LINK.fn(procedure, store)\">\n <div class=\"consult-link\" [title]=\"'@hvy.action.consult' | i18n\">\n <pry-icon iconSvg=\"eye\" [height]=\"30\" [width]=\"40\"></pry-icon>\n </div>\n </a>\n </td>\n </tr>\n } @empty {\n <tr>\n <td class=\"o-hvy-events-table__empty\" colspan=\"50\">\n <div>{{ '@hvy.procedure.noContent' | i18n }}</div>\n <div>\n <ng-content></ng-content>\n </div>\n </td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n</div>\n" }]
49
49
  }], ctorParameters: () => [{ type: i1.Store }, { type: i2.Router }, { type: i3.InfiniteScrollService }], propDecorators: { scrollable: [{
50
50
  type: ViewChild,
51
51
  args: ['scrollable']
52
52
  }], placeholder: [{
53
53
  type: Input
54
54
  }] } });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2VkdXJlLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9oeXBlcnZpc29yL3NyYy9saWIvcHJvY2VkdXJlL21vZGVsLWxpc3QvcHJvY2VkdXJlLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9oeXBlcnZpc29yL3NyYy9saWIvcHJvY2VkdXJlL21vZGVsLWxpc3QvcHJvY2VkdXJlLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQWMsS0FBSyxFQUFhLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdsRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUUzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUUvRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUU5RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7Ozs7Ozs7Ozs7QUFFdEQsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLEVBQUUsRUFBRSxDQUFDLFNBQTRCLEVBQUUsS0FBaUIsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7Q0FDeEYsQ0FBQztBQU1GLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSx3QkFBd0I7SUFRbEUsWUFDWSxLQUFpQixFQUNuQixNQUFjLEVBQ2QsTUFBNkI7UUFFckMsS0FBSyxFQUFFLENBQUM7UUFKRSxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ25CLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxXQUFNLEdBQU4sTUFBTSxDQUF1QjtRQVR2QyxtQkFBYyxHQUFHLGNBQWMsQ0FBQztRQUNoQyxXQUFNLEdBQVcsRUFBRSxDQUFDO1FBQ0QsWUFBTyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUU1RCxnQkFBVyxHQUFXLG9CQUFvQixDQUFDO1FBd0JqQyxVQUFLLEdBQUcsS0FBSyxDQUFDO1FBaEIvQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUN6RyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzdELENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxDQUFDLFNBQTRCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzdFLENBQUM7OEdBNUJVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLHlPQ3BCbkMsZ2lJQTZGQTs7MkZEekVhLHNCQUFzQjtrQkFKbEMsU0FBUzsrQkFDRSwwQkFBMEI7bUlBUVgsVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZO2dCQUNkLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPbkRlc3Ryb3ksIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgUHJvY2VkdXJlQWN0aW9ucyB9IGZyb20gJy4uLy4uL3N0b3JlL3Byb2NlZHVyZS9wcm9jZWR1cmUuYWN0aW9ucyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQcm9jZWR1cmVTZWxlY3RvcnMgfSBmcm9tICcuLi8uLi9zdG9yZS9wcm9jZWR1cmUvcHJvY2VkdXJlLnNlbGVjdG9ycyc7XG5pbXBvcnQgeyBIeXBQcm9jZWR1cmVNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVsL3Byb2NlZHVyZS9oeXAtcHJvY2VkdXJlLW1vZGVsLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmUgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgSW5maW5pdGVTY3JvbGxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZ2VuZXJhbC9pbmZpbml0ZVNjcm9sbC5zZXJ2aWNlJztcbmltcG9ydCB7IERPTUFJTlMgfSBmcm9tICcuLi8uLi9tb2RlbC9kb21haW5zLmNvbnN0YW50JztcbmltcG9ydCB7IHBhZElkIH0gZnJvbSAnLi4vLi4vZ2VuZXJhbC9wYWQtaWQuZnVuY3Rpb24nO1xuXG5leHBvcnQgY29uc3QgUFJPQ0VEVVJFX0xJTksgPSB7XG4gIGZuOiAocHJvY2VkdXJlOiBIeXBQcm9jZWR1cmVNb2RlbCwgc3RvcmU6IFN0b3JlPGFueT4pID0+IFsnLi8nLCBwYWRJZC5mbihwcm9jZWR1cmUuaWQpXVxufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaHZ5LXByb2NlZHVyZS1tb2RlbC1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb2NlZHVyZS1saXN0LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQcm9jZWR1cmVMaXN0Q29tcG9uZW50IGV4dGVuZHMgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgcHJvY2VkdXJlcyQ6IE9ic2VydmFibGU8SHlwUHJvY2VkdXJlTW9kZWxbXT47XG4gIFBST0NFRFVSRV9MSU5LID0gUFJPQ0VEVVJFX0xJTks7XG4gIHNlYXJjaDogc3RyaW5nID0gJyc7XG4gIHByb3RlY3RlZCByZWFkb25seSBET01BSU5TID0gRE9NQUlOUy52YWx1ZXMubWFwKChkKSA9PiAoeyBrZXk6IGQgfSkpO1xuICBAVmlld0NoaWxkKCdzY3JvbGxhYmxlJykgc2Nyb2xsYWJsZSE6IEVsZW1lbnRSZWY7XG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnQGh2eS5hY3Rpb24uc2VhcmNoJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgc3RvcmU6IFN0b3JlPGFueT4sXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHNjcm9sbDogSW5maW5pdGVTY3JvbGxTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChQcm9jZWR1cmVBY3Rpb25zLmxvYWQoe30pKTtcbiAgICB0aGlzLnByb2NlZHVyZXMkID0gdGhpcy5zdG9yZS5zZWxlY3QoUHJvY2VkdXJlU2VsZWN0b3JzLnByb2NlZHVyZXMpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnNjcm9sbC5pc0VuZE9mUGFnZSh0aGlzLnNjcm9sbGFibGUubmF0aXZlRWxlbWVudCwgUHJvY2VkdXJlU2VsZWN0b3JzLm5vTW9yZVByb2NlZHVyZXMpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goUHJvY2VkdXJlQWN0aW9ucy5sb2FkKHsgbmV4dDogdHJ1ZSB9KSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBnb1RvKHByb2NlZHVyZTogSHlwUHJvY2VkdXJlTW9kZWwpIHtcbiAgICByZXR1cm4gdGhpcy5yb3V0ZXIubmF2aWdhdGUodGhpcy5QUk9DRURVUkVfTElOSy5mbihwcm9jZWR1cmUsIHRoaXMuc3RvcmUpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCByZWFkb25seSBwYWRJZCA9IHBhZElkO1xufVxuIiwiPGRpdiBjbGFzcz1cIm8tcHJvY2VkdXJlLWxpc3RcIj5cbiAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCBvLXByb2NlZHVyZS1saXN0X19hY3Rpb25cIj5cbiAgICA8aHZ5LWltbWVkaWF0ZS1maWx0ZXJzIFtmaWx0ZXJTZXRdPVwiJ3Byb2NlZHVyZSdcIj5cbiAgICAgIDxodnktdGV4dC1maWx0ZXIgcHJvcD1cInNlYXJjaFwiICNmaWx0ZXIgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCI+PC9odnktdGV4dC1maWx0ZXI+XG4gICAgICA8aHZ5LWNob2ljZS1maWx0ZXJcbiAgICAgICAgaTE4blByZWZpeD1cIkBodnkuZXZlbnQuZG9tYWluLlwiXG4gICAgICAgIGxhYmVsPVwiQGh2eS5ldmVudC5kb21haW4ubmFtZVwiXG4gICAgICAgIFtjaG9pY2VzXT1cIkRPTUFJTlNcIlxuICAgICAgICBwcm9wPVwiZG9tYWluXCJcbiAgICAgICAgI2ZpbHRlclxuICAgICAgPjwvaHZ5LWNob2ljZS1maWx0ZXI+XG4gICAgPC9odnktaW1tZWRpYXRlLWZpbHRlcnM+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiby1wcm9jZWR1cmUtbGlzdF9fdGFibGVcIiAjc2Nyb2xsYWJsZT5cbiAgICA8dGFibGUgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVcIj5cbiAgICAgIDx0aGVhZD5cbiAgICAgICAgPHRyIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19oZWFkZXJcIj5cbiAgICAgICAgICA8dGg+XG4gICAgICAgICAgICA8aHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXIgZmllbGQ9XCJpZFwiPnt7ICdAaHZ5LnByb2NlZHVyZS5pZCcgfCBpMThuIH19PC9odnktcHJvY2VkdXJlLWNvbHVtbi1vcmRlcj5cbiAgICAgICAgICA8L3RoPlxuICAgICAgICAgIDx0aD5cbiAgICAgICAgICAgIDxodnktcHJvY2VkdXJlLWNvbHVtbi1vcmRlciBmaWVsZD1cIm5hbWVcIj57eyAnQGh2eS5wcm9jZWR1cmUudGl0bGUnIHwgaTE4biB9fTwvaHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXI+XG4gICAgICAgICAgPC90aD5cbiAgICAgICAgICA8dGg+XG4gICAgICAgICAgICA8aHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXIgZmllbGQ9XCJkb21haW5cIj57eyAnQGh2eS5wcm9jZWR1cmUuZG9tYWluJyB8IGkxOG4gfX08L2h2eS1wcm9jZWR1cmUtY29sdW1uLW9yZGVyPlxuICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgPHRoPlxuICAgICAgICAgICAgPGh2eS1wcm9jZWR1cmUtY29sdW1uLW9yZGVyIGZpZWxkPVwidXNlQ291bnRcIlxuICAgICAgICAgICAgICA+e3sgJ0BodnkucHJvY2VkdXJlLnVzZUNvdW50JyB8IGkxOG4gfX1cbiAgICAgICAgICAgIDwvaHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXI+XG4gICAgICAgICAgPC90aD5cbiAgICAgICAgICA8dGg+XG4gICAgICAgICAgICA8aHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXIgZmllbGQ9XCJjcmVhdG9yXCJcbiAgICAgICAgICAgICAgPnt7ICdAaHZ5LnByb2NlZHVyZS5hdXRob3InIHwgaTE4biB9fVxuICAgICAgICAgICAgPC9odnktcHJvY2VkdXJlLWNvbHVtbi1vcmRlcj5cbiAgICAgICAgICA8L3RoPlxuICAgICAgICAgIDx0aD5cbiAgICAgICAgICAgIDxodnktcHJvY2VkdXJlLWNvbHVtbi1vcmRlciBmaWVsZD1cImNyZWF0aW9uRGF0ZVwiXG4gICAgICAgICAgICAgID57eyAnQGh2eS5ldmVudC5jcmVhdGlvbkRhdGVUYWJsZScgfCBpMThuIH19XG4gICAgICAgICAgICA8L2h2eS1wcm9jZWR1cmUtY29sdW1uLW9yZGVyPlxuICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgPHRoPlxuICAgICAgICAgICAgPGh2eS1wcm9jZWR1cmUtY29sdW1uLW9yZGVyIGZpZWxkPVwibGFzdE1vZGlmaWNhdGlvbkRhdGVcIj5cbiAgICAgICAgICAgICAgPHNwYW4+e3sgJ0BodnkuZXZlbnQubGFzdE1vZGlmaWNhdGlvbkRhdGVUYWJsZScgfCBpMThuIH19PC9zcGFuPjwvaHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXJcbiAgICAgICAgICAgID5cbiAgICAgICAgICA8L3RoPlxuICAgICAgICAgIDx0aD5cbiAgICAgICAgICAgIDxodnktcHJvY2VkdXJlLWNvbHVtbi1vcmRlciBmaWVsZD1cImV0YXRcIj5cbiAgICAgICAgICAgICAgPHNwYW4+e3sgJ0BodnkucHJvY2VkdXJlLmV0YXQnIHwgaTE4biB9fTwvc3Bhbj48L2h2eS1wcm9jZWR1cmUtY29sdW1uLW9yZGVyXG4gICAgICAgICAgICA+XG4gICAgICAgICAgPC90aD5cbiAgICAgICAgICA8dGg+PC90aD5cbiAgICAgICAgPC90cj5cbiAgICAgIDwvdGhlYWQ+XG4gICAgICA8dGJvZHk+XG4gICAgICAgIEBmb3IgKHByb2NlZHVyZSBvZiBwcm9jZWR1cmVzJCB8IGFzeW5jOyB0cmFjayBwcm9jZWR1cmUuaWQpIHtcbiAgICAgICAgICA8dHIgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVcIiAoY2xpY2spPVwiZ29Ubyhwcm9jZWR1cmUpXCI+XG4gICAgICAgICAgICA8dGQgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVfX2NlbGxcIj57eyBwYWRJZC5mbihwcm9jZWR1cmUuaWQpIH19PC90ZD5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPnt7IHByb2NlZHVyZS5uYW1lIH19PC90ZD5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPnt7ICdAaHZ5LmV2ZW50LmRvbWFpbi4nICsgcHJvY2VkdXJlLmRvbWFpbiB8IGkxOG4gfX08L3RkPlxuICAgICAgICAgICAgPHRkIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lX19jZWxsXCI+e3sgcHJvY2VkdXJlLnVzZUNvdW50IH19PC90ZD5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPnt7IHByb2NlZHVyZS5jcmVhdG9yIH19PC90ZD5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPnt7IHByb2NlZHVyZS5jcmVhdGlvbkRhdGUgfCBkaXNwbGF5TG9jYWxlRGF0ZXRpbWUgfX08L3RkPlxuICAgICAgICAgICAgPHRkIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lX19jZWxsXCI+XG4gICAgICAgICAgICAgIHt7IHByb2NlZHVyZS5sYXN0TW9kaWZpY2F0aW9uRGF0ZSB8IGRpc3BsYXlMb2NhbGVEYXRldGltZSB9fVxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cInNsdC1pbmQyLWJ1YmJsZS1jb250YWluZXJcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IFtuZ0NsYXNzXT1cInByb2NlZHVyZS5hY3RpdmUgPyAnLWdyZWVuJyA6ICctcmVkJ1wiPnt7ICdAaHZ5LnByb2NlZHVyZS5zdGF0dXMuYWN0aXZlLicgKyBwcm9jZWR1cmUuYWN0aXZlIHwgaTE4biAgfX08L2Rpdj5cbiAgICAgICAgICAgICAgPC9zcGFuPlxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPlxuICAgICAgICAgICAgICA8YSBbcm91dGVyTGlua109XCJQUk9DRURVUkVfTElOSy5mbihwcm9jZWR1cmUsIHN0b3JlKVwiPlxuICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9XCJjb25zdWx0LWxpbmtcIiBbdGl0bGVdPVwiJ0BodnkuYWN0aW9uLmNvbnN1bHQnIHwgaTE4blwiPlxuICAgICAgICAgICAgICAgICAgPHByeS1pY29uIGljb25Tdmc9XCJleWVcIiBbaGVpZ2h0XT1cIjMwXCIgW3dpZHRoXT1cIjQwXCI+PC9wcnktaWNvbj5cbiAgICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgICAgPC9hPlxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICB9IEBlbXB0eSB7XG4gICAgICAgICAgPHRyPlxuICAgICAgICAgICAgPHRkIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19lbXB0eVwiIGNvbHNwYW49XCI1MFwiPlxuICAgICAgICAgICAgICA8ZGl2Pnt7ICdAaHZ5LnByb2NlZHVyZS5ub0NvbnRlbnQnIHwgaTE4biB9fTwvZGl2PlxuICAgICAgICAgICAgICA8ZGl2PlxuICAgICAgICAgICAgICAgIDxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICA8L3RkPlxuICAgICAgICAgIDwvdHI+XG4gICAgICAgIH1cbiAgICAgIDwvdGJvZHk+XG4gICAgPC90YWJsZT5cbiAgPC9kaXY+XG48L2Rpdj5cbiJdfQ==
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvY2VkdXJlLWxpc3QuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9oeXBlcnZpc29yL3NyYy9saWIvcHJvY2VkdXJlL21vZGVsLWxpc3QvcHJvY2VkdXJlLWxpc3QuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcHJvdm9seS9oeXBlcnZpc29yL3NyYy9saWIvcHJvY2VkdXJlL21vZGVsLWxpc3QvcHJvY2VkdXJlLWxpc3QuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFpQixTQUFTLEVBQWMsS0FBSyxFQUFhLFNBQVMsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUdsRyxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUUzRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUUvRSxPQUFPLEVBQUUsd0JBQXdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUU5RCxPQUFPLEVBQUUsT0FBTyxFQUFFLE1BQU0sOEJBQThCLENBQUM7QUFDdkQsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLCtCQUErQixDQUFDOzs7Ozs7Ozs7Ozs7QUFFdEQsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUFHO0lBQzVCLEVBQUUsRUFBRSxDQUFDLFNBQTRCLEVBQUUsS0FBaUIsRUFBRSxFQUFFLENBQUMsQ0FBQyxJQUFJLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLENBQUM7Q0FDeEYsQ0FBQztBQU1GLE1BQU0sT0FBTyxzQkFBdUIsU0FBUSx3QkFBd0I7SUFRbEUsWUFDWSxLQUFpQixFQUNuQixNQUFjLEVBQ2QsTUFBNkI7UUFFckMsS0FBSyxFQUFFLENBQUM7UUFKRSxVQUFLLEdBQUwsS0FBSyxDQUFZO1FBQ25CLFdBQU0sR0FBTixNQUFNLENBQVE7UUFDZCxXQUFNLEdBQU4sTUFBTSxDQUF1QjtRQVR2QyxtQkFBYyxHQUFHLGNBQWMsQ0FBQztRQUNoQyxXQUFNLEdBQVcsRUFBRSxDQUFDO1FBQ0QsWUFBTyxHQUFHLE9BQU8sQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUU1RCxnQkFBVyxHQUFXLG9CQUFvQixDQUFDO1FBd0JqQyxVQUFLLEdBQUcsS0FBSyxDQUFDO1FBaEIvQixJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztRQUMvQyxJQUFJLENBQUMsV0FBVyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLGtCQUFrQixDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFRCxlQUFlO1FBQ2IsSUFBSSxDQUFDLGFBQWEsQ0FBQyxHQUFHLENBQ3BCLElBQUksQ0FBQyxNQUFNLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsYUFBYSxFQUFFLGtCQUFrQixDQUFDLGdCQUFnQixDQUFDLENBQUMsU0FBUyxDQUFDLEdBQUcsRUFBRTtZQUN6RyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxnQkFBZ0IsQ0FBQyxJQUFJLENBQUMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQzdELENBQUMsQ0FBQyxDQUNILENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxDQUFDLFNBQTRCO1FBQy9CLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxFQUFFLENBQUMsU0FBUyxFQUFFLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDO0lBQzdFLENBQUM7OEdBNUJVLHNCQUFzQjtrR0FBdEIsc0JBQXNCLHlPQ3BCbkMsaWlJQTZGQTs7MkZEekVhLHNCQUFzQjtrQkFKbEMsU0FBUzsrQkFDRSwwQkFBMEI7bUlBUVgsVUFBVTtzQkFBbEMsU0FBUzt1QkFBQyxZQUFZO2dCQUNkLFdBQVc7c0JBQW5CLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBZnRlclZpZXdJbml0LCBDb21wb25lbnQsIEVsZW1lbnRSZWYsIElucHV0LCBPbkRlc3Ryb3ksIFZpZXdDaGlsZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgUm91dGVyIH0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IFN0b3JlIH0gZnJvbSAnQG5ncngvc3RvcmUnO1xuaW1wb3J0IHsgUHJvY2VkdXJlQWN0aW9ucyB9IGZyb20gJy4uLy4uL3N0b3JlL3Byb2NlZHVyZS9wcm9jZWR1cmUuYWN0aW9ucyc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5pbXBvcnQgeyBQcm9jZWR1cmVTZWxlY3RvcnMgfSBmcm9tICcuLi8uLi9zdG9yZS9wcm9jZWR1cmUvcHJvY2VkdXJlLnNlbGVjdG9ycyc7XG5pbXBvcnQgeyBIeXBQcm9jZWR1cmVNb2RlbCB9IGZyb20gJy4uLy4uL21vZGVsL3Byb2NlZHVyZS9oeXAtcHJvY2VkdXJlLW1vZGVsLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTdWJzY3JpcHRpb25uZXJEaXJlY3RpdmUgfSBmcm9tICdAcHJvdm9seS9kYXNoYm9hcmQnO1xuaW1wb3J0IHsgSW5maW5pdGVTY3JvbGxTZXJ2aWNlIH0gZnJvbSAnLi4vLi4vZ2VuZXJhbC9pbmZpbml0ZVNjcm9sbC5zZXJ2aWNlJztcbmltcG9ydCB7IERPTUFJTlMgfSBmcm9tICcuLi8uLi9tb2RlbC9kb21haW5zLmNvbnN0YW50JztcbmltcG9ydCB7IHBhZElkIH0gZnJvbSAnLi4vLi4vZ2VuZXJhbC9wYWQtaWQuZnVuY3Rpb24nO1xuXG5leHBvcnQgY29uc3QgUFJPQ0VEVVJFX0xJTksgPSB7XG4gIGZuOiAocHJvY2VkdXJlOiBIeXBQcm9jZWR1cmVNb2RlbCwgc3RvcmU6IFN0b3JlPGFueT4pID0+IFsnLi8nLCBwYWRJZC5mbihwcm9jZWR1cmUuaWQpXVxufTtcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnaHZ5LXByb2NlZHVyZS1tb2RlbC1saXN0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL3Byb2NlZHVyZS1saXN0LmNvbXBvbmVudC5odG1sJ1xufSlcbmV4cG9ydCBjbGFzcyBQcm9jZWR1cmVMaXN0Q29tcG9uZW50IGV4dGVuZHMgU3Vic2NyaXB0aW9ubmVyRGlyZWN0aXZlIGltcGxlbWVudHMgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcbiAgcHJvY2VkdXJlcyQ6IE9ic2VydmFibGU8SHlwUHJvY2VkdXJlTW9kZWxbXT47XG4gIFBST0NFRFVSRV9MSU5LID0gUFJPQ0VEVVJFX0xJTks7XG4gIHNlYXJjaDogc3RyaW5nID0gJyc7XG4gIHByb3RlY3RlZCByZWFkb25seSBET01BSU5TID0gRE9NQUlOUy52YWx1ZXMubWFwKChkKSA9PiAoeyBrZXk6IGQgfSkpO1xuICBAVmlld0NoaWxkKCdzY3JvbGxhYmxlJykgc2Nyb2xsYWJsZSE6IEVsZW1lbnRSZWY7XG4gIEBJbnB1dCgpIHBsYWNlaG9sZGVyOiBzdHJpbmcgPSAnQGh2eS5hY3Rpb24uc2VhcmNoJztcblxuICBjb25zdHJ1Y3RvcihcbiAgICBwcm90ZWN0ZWQgc3RvcmU6IFN0b3JlPGFueT4sXG4gICAgcHJpdmF0ZSByb3V0ZXI6IFJvdXRlcixcbiAgICBwcml2YXRlIHNjcm9sbDogSW5maW5pdGVTY3JvbGxTZXJ2aWNlXG4gICkge1xuICAgIHN1cGVyKCk7XG4gICAgdGhpcy5zdG9yZS5kaXNwYXRjaChQcm9jZWR1cmVBY3Rpb25zLmxvYWQoe30pKTtcbiAgICB0aGlzLnByb2NlZHVyZXMkID0gdGhpcy5zdG9yZS5zZWxlY3QoUHJvY2VkdXJlU2VsZWN0b3JzLnByb2NlZHVyZXMpO1xuICB9XG5cbiAgbmdBZnRlclZpZXdJbml0KCk6IHZvaWQge1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucy5hZGQoXG4gICAgICB0aGlzLnNjcm9sbC5pc0VuZE9mUGFnZSh0aGlzLnNjcm9sbGFibGUubmF0aXZlRWxlbWVudCwgUHJvY2VkdXJlU2VsZWN0b3JzLm5vTW9yZVByb2NlZHVyZXMpLnN1YnNjcmliZSgoKSA9PiB7XG4gICAgICAgIHRoaXMuc3RvcmUuZGlzcGF0Y2goUHJvY2VkdXJlQWN0aW9ucy5sb2FkKHsgbmV4dDogdHJ1ZSB9KSk7XG4gICAgICB9KVxuICAgICk7XG4gIH1cblxuICBnb1RvKHByb2NlZHVyZTogSHlwUHJvY2VkdXJlTW9kZWwpIHtcbiAgICByZXR1cm4gdGhpcy5yb3V0ZXIubmF2aWdhdGUodGhpcy5QUk9DRURVUkVfTElOSy5mbihwcm9jZWR1cmUsIHRoaXMuc3RvcmUpKTtcbiAgfVxuXG4gIHByb3RlY3RlZCByZWFkb25seSBwYWRJZCA9IHBhZElkO1xufVxuIiwiPGRpdiBjbGFzcz1cIm8tcHJvY2VkdXJlLWxpc3RcIj5cbiAgPGRpdiBjbGFzcz1cIm0tZm9ybS1sYWJlbC1maWVsZCBvLXByb2NlZHVyZS1saXN0X19hY3Rpb25cIj5cbiAgICA8aHZ5LWltbWVkaWF0ZS1maWx0ZXJzIFtmaWx0ZXJTZXRdPVwiJ3Byb2NlZHVyZSdcIj5cbiAgICAgIDxodnktdGV4dC1maWx0ZXIgcHJvcD1cInNlYXJjaFwiICNmaWx0ZXIgW3BsYWNlaG9sZGVyXT1cInBsYWNlaG9sZGVyXCI+PC9odnktdGV4dC1maWx0ZXI+XG4gICAgICA8aHZ5LWNob2ljZS1maWx0ZXJcbiAgICAgICAgaTE4blByZWZpeD1cIkBodnkuZXZlbnQuZG9tYWluLlwiXG4gICAgICAgIGxhYmVsPVwiQGh2eS5ldmVudC5kb21haW4ubmFtZVwiXG4gICAgICAgIFtjaG9pY2VzXT1cIkRPTUFJTlNcIlxuICAgICAgICBwcm9wPVwiZG9tYWluXCJcbiAgICAgICAgI2ZpbHRlclxuICAgICAgPjwvaHZ5LWNob2ljZS1maWx0ZXI+XG4gICAgPC9odnktaW1tZWRpYXRlLWZpbHRlcnM+XG4gIDwvZGl2PlxuICA8ZGl2IGNsYXNzPVwiby1wcm9jZWR1cmUtbGlzdF9fdGFibGVcIiAjc2Nyb2xsYWJsZT5cbiAgICA8dGFibGUgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVcIj5cbiAgICAgIDx0aGVhZD5cbiAgICAgICAgPHRyIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19oZWFkZXJcIj5cbiAgICAgICAgICA8dGg+XG4gICAgICAgICAgICA8aHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXIgZmllbGQ9XCJpZFwiPnt7ICdAaHZ5LnByb2NlZHVyZS5pZCcgfCBpMThuIH19PC9odnktcHJvY2VkdXJlLWNvbHVtbi1vcmRlcj5cbiAgICAgICAgICA8L3RoPlxuICAgICAgICAgIDx0aD5cbiAgICAgICAgICAgIDxodnktcHJvY2VkdXJlLWNvbHVtbi1vcmRlciBmaWVsZD1cIm5hbWVcIj57eyAnQGh2eS5wcm9jZWR1cmUudGl0bGUnIHwgaTE4biB9fTwvaHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXI+XG4gICAgICAgICAgPC90aD5cbiAgICAgICAgICA8dGg+XG4gICAgICAgICAgICA8aHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXIgZmllbGQ9XCJkb21haW5cIj57eyAnQGh2eS5wcm9jZWR1cmUuZG9tYWluJyB8IGkxOG4gfX08L2h2eS1wcm9jZWR1cmUtY29sdW1uLW9yZGVyPlxuICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgPHRoPlxuICAgICAgICAgICAgPGh2eS1wcm9jZWR1cmUtY29sdW1uLW9yZGVyIGZpZWxkPVwidXNlQ291bnRcIlxuICAgICAgICAgICAgICA+e3sgJ0BodnkucHJvY2VkdXJlLnVzZUNvdW50JyB8IGkxOG4gfX1cbiAgICAgICAgICAgIDwvaHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXI+XG4gICAgICAgICAgPC90aD5cbiAgICAgICAgICA8dGg+XG4gICAgICAgICAgICA8aHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXIgZmllbGQ9XCJjcmVhdG9yXCJcbiAgICAgICAgICAgICAgPnt7ICdAaHZ5LnByb2NlZHVyZS5hdXRob3InIHwgaTE4biB9fVxuICAgICAgICAgICAgPC9odnktcHJvY2VkdXJlLWNvbHVtbi1vcmRlcj5cbiAgICAgICAgICA8L3RoPlxuICAgICAgICAgIDx0aD5cbiAgICAgICAgICAgIDxodnktcHJvY2VkdXJlLWNvbHVtbi1vcmRlciBmaWVsZD1cImNyZWF0aW9uRGF0ZVwiXG4gICAgICAgICAgICAgID57eyAnQGh2eS5ldmVudC5jcmVhdGlvbkRhdGVUYWJsZScgfCBpMThuIH19XG4gICAgICAgICAgICA8L2h2eS1wcm9jZWR1cmUtY29sdW1uLW9yZGVyPlxuICAgICAgICAgIDwvdGg+XG4gICAgICAgICAgPHRoPlxuICAgICAgICAgICAgPGh2eS1wcm9jZWR1cmUtY29sdW1uLW9yZGVyIGZpZWxkPVwibGFzdE1vZGlmaWNhdGlvbkRhdGVcIj5cbiAgICAgICAgICAgICAgPHNwYW4+e3sgJ0BodnkuZXZlbnQubGFzdE1vZGlmaWNhdGlvbkRhdGVUYWJsZScgfCBpMThuIH19PC9zcGFuPjwvaHZ5LXByb2NlZHVyZS1jb2x1bW4tb3JkZXJcbiAgICAgICAgICAgID5cbiAgICAgICAgICA8L3RoPlxuICAgICAgICAgIDx0aD5cbiAgICAgICAgICAgIDxodnktcHJvY2VkdXJlLWNvbHVtbi1vcmRlciBmaWVsZD1cImV0YXRcIj5cbiAgICAgICAgICAgICAgPHNwYW4+e3sgJ0BodnkucHJvY2VkdXJlLmV0YXQnIHwgaTE4biB9fTwvc3Bhbj48L2h2eS1wcm9jZWR1cmUtY29sdW1uLW9yZGVyXG4gICAgICAgICAgICA+XG4gICAgICAgICAgPC90aD5cbiAgICAgICAgICA8dGg+PC90aD5cbiAgICAgICAgPC90cj5cbiAgICAgIDwvdGhlYWQ+XG4gICAgICA8dGJvZHk+XG4gICAgICAgIEBmb3IgKHByb2NlZHVyZSBvZiBwcm9jZWR1cmVzJCB8IGFzeW5jOyB0cmFjayBwcm9jZWR1cmUuaWQpIHtcbiAgICAgICAgICA8dHIgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVcIiAoY2xpY2spPVwiZ29Ubyhwcm9jZWR1cmUpXCI+XG4gICAgICAgICAgICA8dGQgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVfX2NlbGxcIj57eyBwYWRJZC5mbihwcm9jZWR1cmUuaWQpIH19PC90ZD5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPnt7IHByb2NlZHVyZS5uYW1lIH19PC90ZD5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPnt7ICdAaHZ5LmV2ZW50LmRvbWFpbi4nICsgcHJvY2VkdXJlLmRvbWFpbiB8IGkxOG4gfX08L3RkPlxuICAgICAgICAgICAgPHRkIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lX19jZWxsXCI+e3sgcHJvY2VkdXJlLnVzZUNvdW50IH19PC90ZD5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPnt7IHByb2NlZHVyZS5jcmVhdG9yIH19PC90ZD5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPnt7IHByb2NlZHVyZS5jcmVhdGlvbkRhdGUgfCBkaXNwbGF5TG9jYWxlRGF0ZXRpbWUgfX08L3RkPlxuICAgICAgICAgICAgPHRkIGNsYXNzPVwiby1odnktZXZlbnRzLXRhYmxlX19saW5lX19jZWxsXCI+XG4gICAgICAgICAgICAgIHt7IHByb2NlZHVyZS5sYXN0TW9kaWZpY2F0aW9uRGF0ZSB8IGRpc3BsYXlMb2NhbGVEYXRldGltZSB9fVxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fbGluZV9fY2VsbFwiPlxuICAgICAgICAgICAgICA8c3BhbiBjbGFzcz1cImRhc2hib2FyZC1idWJibGUtY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgPGRpdiBbbmdDbGFzc109XCJwcm9jZWR1cmUuYWN0aXZlID8gJy1ncmVlbicgOiAnLXJlZCdcIj57eyAnQGh2eS5wcm9jZWR1cmUuc3RhdHVzLmFjdGl2ZS4nICsgcHJvY2VkdXJlLmFjdGl2ZSB8IGkxOG4gIH19PC9kaXY+XG4gICAgICAgICAgICAgIDwvc3Bhbj5cbiAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgICA8dGQgY2xhc3M9XCJvLWh2eS1ldmVudHMtdGFibGVfX2xpbmVfX2NlbGxcIj5cbiAgICAgICAgICAgICAgPGEgW3JvdXRlckxpbmtdPVwiUFJPQ0VEVVJFX0xJTksuZm4ocHJvY2VkdXJlLCBzdG9yZSlcIj5cbiAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiY29uc3VsdC1saW5rXCIgW3RpdGxlXT1cIidAaHZ5LmFjdGlvbi5jb25zdWx0JyB8IGkxOG5cIj5cbiAgICAgICAgICAgICAgICAgIDxwcnktaWNvbiBpY29uU3ZnPVwiZXllXCIgW2hlaWdodF09XCIzMFwiIFt3aWR0aF09XCI0MFwiPjwvcHJ5LWljb24+XG4gICAgICAgICAgICAgICAgPC9kaXY+XG4gICAgICAgICAgICAgIDwvYT5cbiAgICAgICAgICAgIDwvdGQ+XG4gICAgICAgICAgPC90cj5cbiAgICAgICAgfSBAZW1wdHkge1xuICAgICAgICAgIDx0cj5cbiAgICAgICAgICAgIDx0ZCBjbGFzcz1cIm8taHZ5LWV2ZW50cy10YWJsZV9fZW1wdHlcIiBjb2xzcGFuPVwiNTBcIj5cbiAgICAgICAgICAgICAgPGRpdj57eyAnQGh2eS5wcm9jZWR1cmUubm9Db250ZW50JyB8IGkxOG4gfX08L2Rpdj5cbiAgICAgICAgICAgICAgPGRpdj5cbiAgICAgICAgICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICAgICAgICAgIDwvZGl2PlxuICAgICAgICAgICAgPC90ZD5cbiAgICAgICAgICA8L3RyPlxuICAgICAgICB9XG4gICAgICA8L3Rib2R5PlxuICAgIDwvdGFibGU+XG4gIDwvZGl2PlxuPC9kaXY+XG4iXX0=
@@ -1668,11 +1668,11 @@ class HvyServiceActionDisplayComponent extends HvyBaseParameterActionComponent {
1668
1668
  });
1669
1669
  }
1670
1670
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: HvyServiceActionDisplayComponent, deps: [{ token: i1$2.PryDialogService }, { token: i4.Overlay }, { token: ServiceService }, { token: i1$2.I18nPipe }, { token: i1$1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
1671
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: HvyServiceActionDisplayComponent, selector: "hvy-service-action-display", viewQueries: [{ propertyName: "menuButton", first: true, predicate: ["menuButton"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<div class=\"param-line -vertical\">\n diURL: {{ toto| async }}\n <p>\n {{ '@hvy.procedure.action.service' | i18n }} :\n @if (diUrl() && action.serviceExternalId) {\n <a class=\"a-di-link\" [href]=\"diUrl()! + reference\" target=\"_blank\" rel=\"noopener noreferrer\"><b>{{ reference }}</b></a>\n } @else {\n <b>{{ reference }}</b>\n }\n {{ status }}\n </p>\n @if (!action.serviceExternalId && this.mode !== 'model') {\n <button\n class=\"a-link\"\n [disabled]=\"readonly ||\n (action.type === 'ASKED_SERVICE' &&\n (action.status === 'DONE' || action.status === 'OT_CLOSED' || !action.lastModificationDate)\n ) || disableSaveDIButton\"\n (click)=\"toggleModal()\"\n #menuButton\n >\n > {{ '@hvy.action.create' | i18n }}\n </button>\n }\n</div>\n", dependencies: [{ kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$2.I18nPipe, name: "i18n" }] }); }
1671
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: HvyServiceActionDisplayComponent, selector: "hvy-service-action-display", viewQueries: [{ propertyName: "menuButton", first: true, predicate: ["menuButton"], descendants: true, read: ElementRef }], usesInheritance: true, ngImport: i0, template: "<div class=\"param-line -vertical\">\n <p>\n {{ '@hvy.procedure.action.service' | i18n }} :\n @if (diUrl() && action.serviceExternalId) {\n <a class=\"a-di-link\" [href]=\"diUrl()! + reference\" target=\"_blank\" rel=\"noopener noreferrer\"><b>{{ reference }}</b></a>\n } @else {\n <b>{{ reference }}</b>\n }\n {{ status }}\n </p>\n @if (!action.serviceExternalId && this.mode !== 'model') {\n <button\n class=\"a-link\"\n [disabled]=\"readonly ||\n (action.type === 'ASKED_SERVICE' &&\n (action.status === 'DONE' || action.status === 'OT_CLOSED' || !action.lastModificationDate)\n ) || disableSaveDIButton\"\n (click)=\"toggleModal()\"\n #menuButton\n >\n > {{ '@hvy.action.create' | i18n }}\n </button>\n }\n</div>\n", dependencies: [{ kind: "pipe", type: i1$2.I18nPipe, name: "i18n" }] }); }
1672
1672
  }
1673
1673
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: HvyServiceActionDisplayComponent, decorators: [{
1674
1674
  type: Component,
1675
- args: [{ selector: 'hvy-service-action-display', template: "<div class=\"param-line -vertical\">\n diURL: {{ toto| async }}\n <p>\n {{ '@hvy.procedure.action.service' | i18n }} :\n @if (diUrl() && action.serviceExternalId) {\n <a class=\"a-di-link\" [href]=\"diUrl()! + reference\" target=\"_blank\" rel=\"noopener noreferrer\"><b>{{ reference }}</b></a>\n } @else {\n <b>{{ reference }}</b>\n }\n {{ status }}\n </p>\n @if (!action.serviceExternalId && this.mode !== 'model') {\n <button\n class=\"a-link\"\n [disabled]=\"readonly ||\n (action.type === 'ASKED_SERVICE' &&\n (action.status === 'DONE' || action.status === 'OT_CLOSED' || !action.lastModificationDate)\n ) || disableSaveDIButton\"\n (click)=\"toggleModal()\"\n #menuButton\n >\n > {{ '@hvy.action.create' | i18n }}\n </button>\n }\n</div>\n" }]
1675
+ args: [{ selector: 'hvy-service-action-display', template: "<div class=\"param-line -vertical\">\n <p>\n {{ '@hvy.procedure.action.service' | i18n }} :\n @if (diUrl() && action.serviceExternalId) {\n <a class=\"a-di-link\" [href]=\"diUrl()! + reference\" target=\"_blank\" rel=\"noopener noreferrer\"><b>{{ reference }}</b></a>\n } @else {\n <b>{{ reference }}</b>\n }\n {{ status }}\n </p>\n @if (!action.serviceExternalId && this.mode !== 'model') {\n <button\n class=\"a-link\"\n [disabled]=\"readonly ||\n (action.type === 'ASKED_SERVICE' &&\n (action.status === 'DONE' || action.status === 'OT_CLOSED' || !action.lastModificationDate)\n ) || disableSaveDIButton\"\n (click)=\"toggleModal()\"\n #menuButton\n >\n > {{ '@hvy.action.create' | i18n }}\n </button>\n }\n</div>\n" }]
1676
1676
  }], ctorParameters: () => [{ type: i1$2.PryDialogService }, { type: i4.Overlay }, { type: ServiceService }, { type: i1$2.I18nPipe }, { type: i1$1.Store }], propDecorators: { menuButton: [{
1677
1677
  type: ViewChild,
1678
1678
  args: ['menuButton', { read: ElementRef }]
@@ -3399,11 +3399,11 @@ class ProcedureListComponent extends SubscriptionnerDirective {
3399
3399
  return this.router.navigate(this.PROCEDURE_LINK.fn(procedure, this.store));
3400
3400
  }
3401
3401
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: ProcedureListComponent, deps: [{ token: i1$1.Store }, { token: i2.Router }, { token: InfiniteScrollService }], target: i0.ɵɵFactoryTarget.Component }); }
3402
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: ProcedureListComponent, selector: "hvy-procedure-model-list", inputs: { placeholder: "placeholder" }, viewQueries: [{ propertyName: "scrollable", first: true, predicate: ["scrollable"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"o-procedure-list\">\n <div class=\"m-form-label-field o-procedure-list__action\">\n <hvy-immediate-filters [filterSet]=\"'procedure'\">\n <hvy-text-filter prop=\"search\" #filter [placeholder]=\"placeholder\"></hvy-text-filter>\n <hvy-choice-filter\n i18nPrefix=\"@hvy.event.domain.\"\n label=\"@hvy.event.domain.name\"\n [choices]=\"DOMAINS\"\n prop=\"domain\"\n #filter\n ></hvy-choice-filter>\n </hvy-immediate-filters>\n </div>\n <div class=\"o-procedure-list__table\" #scrollable>\n <table class=\"o-hvy-events-table\">\n <thead>\n <tr class=\"o-hvy-events-table__header\">\n <th>\n <hvy-procedure-column-order field=\"id\">{{ '@hvy.procedure.id' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"name\">{{ '@hvy.procedure.title' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"domain\">{{ '@hvy.procedure.domain' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"useCount\"\n >{{ '@hvy.procedure.useCount' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creator\"\n >{{ '@hvy.procedure.author' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creationDate\"\n >{{ '@hvy.event.creationDateTable' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"lastModificationDate\">\n <span>{{ '@hvy.event.lastModificationDateTable' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th>\n <hvy-procedure-column-order field=\"etat\">\n <span>{{ '@hvy.procedure.etat' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n @for (procedure of procedures$ | async; track procedure.id) {\n <tr class=\"o-hvy-events-table__line\" (click)=\"goTo(procedure)\">\n <td class=\"o-hvy-events-table__line__cell\">{{ padId.fn(procedure.id) }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.name }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ '@hvy.event.domain.' + procedure.domain | i18n }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.useCount }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creator }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creationDate | displayLocaleDatetime }}</td>\n <td class=\"o-hvy-events-table__line__cell\">\n {{ procedure.lastModificationDate | displayLocaleDatetime }}\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <span class=\"slt-ind2-bubble-container\">\n <div [ngClass]=\"procedure.active ? '-green' : '-red'\">{{ '@hvy.procedure.status.active.' + procedure.active | i18n }}</div>\n </span>\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <a [routerLink]=\"PROCEDURE_LINK.fn(procedure, store)\">\n <div class=\"consult-link\" [title]=\"'@hvy.action.consult' | i18n\">\n <pry-icon iconSvg=\"eye\" [height]=\"30\" [width]=\"40\"></pry-icon>\n </div>\n </a>\n </td>\n </tr>\n } @empty {\n <tr>\n <td class=\"o-hvy-events-table__empty\" colspan=\"50\">\n <div>{{ '@hvy.procedure.noContent' | i18n }}</div>\n <div>\n <ng-content></ng-content>\n </div>\n </td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i1$2.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: TextFilterComponent, selector: "hvy-text-filter", inputs: ["placeholder"] }, { kind: "component", type: ChoiceFilterComponent, selector: "hvy-choice-filter", inputs: ["allLabel", "label", "i18nPrefix", "addNonLeaves", "choices"] }, { kind: "component", type: ProcedureColumnOrderComponent, selector: "hvy-procedure-column-order" }, { kind: "component", type: ImmediateFiltersComponent, selector: "hvy-immediate-filters", inputs: ["filterSet", "delay"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$2.I18nPipe, name: "i18n" }, { kind: "pipe", type: DisplayLocaleDateTime, name: "displayLocaleDatetime" }] }); }
3402
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: ProcedureListComponent, selector: "hvy-procedure-model-list", inputs: { placeholder: "placeholder" }, viewQueries: [{ propertyName: "scrollable", first: true, predicate: ["scrollable"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"o-procedure-list\">\n <div class=\"m-form-label-field o-procedure-list__action\">\n <hvy-immediate-filters [filterSet]=\"'procedure'\">\n <hvy-text-filter prop=\"search\" #filter [placeholder]=\"placeholder\"></hvy-text-filter>\n <hvy-choice-filter\n i18nPrefix=\"@hvy.event.domain.\"\n label=\"@hvy.event.domain.name\"\n [choices]=\"DOMAINS\"\n prop=\"domain\"\n #filter\n ></hvy-choice-filter>\n </hvy-immediate-filters>\n </div>\n <div class=\"o-procedure-list__table\" #scrollable>\n <table class=\"o-hvy-events-table\">\n <thead>\n <tr class=\"o-hvy-events-table__header\">\n <th>\n <hvy-procedure-column-order field=\"id\">{{ '@hvy.procedure.id' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"name\">{{ '@hvy.procedure.title' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"domain\">{{ '@hvy.procedure.domain' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"useCount\"\n >{{ '@hvy.procedure.useCount' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creator\"\n >{{ '@hvy.procedure.author' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creationDate\"\n >{{ '@hvy.event.creationDateTable' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"lastModificationDate\">\n <span>{{ '@hvy.event.lastModificationDateTable' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th>\n <hvy-procedure-column-order field=\"etat\">\n <span>{{ '@hvy.procedure.etat' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n @for (procedure of procedures$ | async; track procedure.id) {\n <tr class=\"o-hvy-events-table__line\" (click)=\"goTo(procedure)\">\n <td class=\"o-hvy-events-table__line__cell\">{{ padId.fn(procedure.id) }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.name }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ '@hvy.event.domain.' + procedure.domain | i18n }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.useCount }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creator }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creationDate | displayLocaleDatetime }}</td>\n <td class=\"o-hvy-events-table__line__cell\">\n {{ procedure.lastModificationDate | displayLocaleDatetime }}\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <span class=\"dashboard-bubble-container\">\n <div [ngClass]=\"procedure.active ? '-green' : '-red'\">{{ '@hvy.procedure.status.active.' + procedure.active | i18n }}</div>\n </span>\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <a [routerLink]=\"PROCEDURE_LINK.fn(procedure, store)\">\n <div class=\"consult-link\" [title]=\"'@hvy.action.consult' | i18n\">\n <pry-icon iconSvg=\"eye\" [height]=\"30\" [width]=\"40\"></pry-icon>\n </div>\n </a>\n </td>\n </tr>\n } @empty {\n <tr>\n <td class=\"o-hvy-events-table__empty\" colspan=\"50\">\n <div>{{ '@hvy.procedure.noContent' | i18n }}</div>\n <div>\n <ng-content></ng-content>\n </div>\n </td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i2.RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: i1$2.PryIconComponent, selector: "pry-icon", inputs: ["color", "iconSvg", "animation", "iconImage", "alt", "width", "height", "classes"] }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: TextFilterComponent, selector: "hvy-text-filter", inputs: ["placeholder"] }, { kind: "component", type: ChoiceFilterComponent, selector: "hvy-choice-filter", inputs: ["allLabel", "label", "i18nPrefix", "addNonLeaves", "choices"] }, { kind: "component", type: ProcedureColumnOrderComponent, selector: "hvy-procedure-column-order" }, { kind: "component", type: ImmediateFiltersComponent, selector: "hvy-immediate-filters", inputs: ["filterSet", "delay"] }, { kind: "pipe", type: i5.AsyncPipe, name: "async" }, { kind: "pipe", type: i1$2.I18nPipe, name: "i18n" }, { kind: "pipe", type: DisplayLocaleDateTime, name: "displayLocaleDatetime" }] }); }
3403
3403
  }
3404
3404
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: ProcedureListComponent, decorators: [{
3405
3405
  type: Component,
3406
- args: [{ selector: 'hvy-procedure-model-list', template: "<div class=\"o-procedure-list\">\n <div class=\"m-form-label-field o-procedure-list__action\">\n <hvy-immediate-filters [filterSet]=\"'procedure'\">\n <hvy-text-filter prop=\"search\" #filter [placeholder]=\"placeholder\"></hvy-text-filter>\n <hvy-choice-filter\n i18nPrefix=\"@hvy.event.domain.\"\n label=\"@hvy.event.domain.name\"\n [choices]=\"DOMAINS\"\n prop=\"domain\"\n #filter\n ></hvy-choice-filter>\n </hvy-immediate-filters>\n </div>\n <div class=\"o-procedure-list__table\" #scrollable>\n <table class=\"o-hvy-events-table\">\n <thead>\n <tr class=\"o-hvy-events-table__header\">\n <th>\n <hvy-procedure-column-order field=\"id\">{{ '@hvy.procedure.id' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"name\">{{ '@hvy.procedure.title' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"domain\">{{ '@hvy.procedure.domain' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"useCount\"\n >{{ '@hvy.procedure.useCount' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creator\"\n >{{ '@hvy.procedure.author' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creationDate\"\n >{{ '@hvy.event.creationDateTable' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"lastModificationDate\">\n <span>{{ '@hvy.event.lastModificationDateTable' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th>\n <hvy-procedure-column-order field=\"etat\">\n <span>{{ '@hvy.procedure.etat' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n @for (procedure of procedures$ | async; track procedure.id) {\n <tr class=\"o-hvy-events-table__line\" (click)=\"goTo(procedure)\">\n <td class=\"o-hvy-events-table__line__cell\">{{ padId.fn(procedure.id) }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.name }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ '@hvy.event.domain.' + procedure.domain | i18n }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.useCount }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creator }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creationDate | displayLocaleDatetime }}</td>\n <td class=\"o-hvy-events-table__line__cell\">\n {{ procedure.lastModificationDate | displayLocaleDatetime }}\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <span class=\"slt-ind2-bubble-container\">\n <div [ngClass]=\"procedure.active ? '-green' : '-red'\">{{ '@hvy.procedure.status.active.' + procedure.active | i18n }}</div>\n </span>\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <a [routerLink]=\"PROCEDURE_LINK.fn(procedure, store)\">\n <div class=\"consult-link\" [title]=\"'@hvy.action.consult' | i18n\">\n <pry-icon iconSvg=\"eye\" [height]=\"30\" [width]=\"40\"></pry-icon>\n </div>\n </a>\n </td>\n </tr>\n } @empty {\n <tr>\n <td class=\"o-hvy-events-table__empty\" colspan=\"50\">\n <div>{{ '@hvy.procedure.noContent' | i18n }}</div>\n <div>\n <ng-content></ng-content>\n </div>\n </td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n</div>\n" }]
3406
+ args: [{ selector: 'hvy-procedure-model-list', template: "<div class=\"o-procedure-list\">\n <div class=\"m-form-label-field o-procedure-list__action\">\n <hvy-immediate-filters [filterSet]=\"'procedure'\">\n <hvy-text-filter prop=\"search\" #filter [placeholder]=\"placeholder\"></hvy-text-filter>\n <hvy-choice-filter\n i18nPrefix=\"@hvy.event.domain.\"\n label=\"@hvy.event.domain.name\"\n [choices]=\"DOMAINS\"\n prop=\"domain\"\n #filter\n ></hvy-choice-filter>\n </hvy-immediate-filters>\n </div>\n <div class=\"o-procedure-list__table\" #scrollable>\n <table class=\"o-hvy-events-table\">\n <thead>\n <tr class=\"o-hvy-events-table__header\">\n <th>\n <hvy-procedure-column-order field=\"id\">{{ '@hvy.procedure.id' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"name\">{{ '@hvy.procedure.title' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"domain\">{{ '@hvy.procedure.domain' | i18n }}</hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"useCount\"\n >{{ '@hvy.procedure.useCount' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creator\"\n >{{ '@hvy.procedure.author' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"creationDate\"\n >{{ '@hvy.event.creationDateTable' | i18n }}\n </hvy-procedure-column-order>\n </th>\n <th>\n <hvy-procedure-column-order field=\"lastModificationDate\">\n <span>{{ '@hvy.event.lastModificationDateTable' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th>\n <hvy-procedure-column-order field=\"etat\">\n <span>{{ '@hvy.procedure.etat' | i18n }}</span></hvy-procedure-column-order\n >\n </th>\n <th></th>\n </tr>\n </thead>\n <tbody>\n @for (procedure of procedures$ | async; track procedure.id) {\n <tr class=\"o-hvy-events-table__line\" (click)=\"goTo(procedure)\">\n <td class=\"o-hvy-events-table__line__cell\">{{ padId.fn(procedure.id) }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.name }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ '@hvy.event.domain.' + procedure.domain | i18n }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.useCount }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creator }}</td>\n <td class=\"o-hvy-events-table__line__cell\">{{ procedure.creationDate | displayLocaleDatetime }}</td>\n <td class=\"o-hvy-events-table__line__cell\">\n {{ procedure.lastModificationDate | displayLocaleDatetime }}\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <span class=\"dashboard-bubble-container\">\n <div [ngClass]=\"procedure.active ? '-green' : '-red'\">{{ '@hvy.procedure.status.active.' + procedure.active | i18n }}</div>\n </span>\n </td>\n <td class=\"o-hvy-events-table__line__cell\">\n <a [routerLink]=\"PROCEDURE_LINK.fn(procedure, store)\">\n <div class=\"consult-link\" [title]=\"'@hvy.action.consult' | i18n\">\n <pry-icon iconSvg=\"eye\" [height]=\"30\" [width]=\"40\"></pry-icon>\n </div>\n </a>\n </td>\n </tr>\n } @empty {\n <tr>\n <td class=\"o-hvy-events-table__empty\" colspan=\"50\">\n <div>{{ '@hvy.procedure.noContent' | i18n }}</div>\n <div>\n <ng-content></ng-content>\n </div>\n </td>\n </tr>\n }\n </tbody>\n </table>\n </div>\n</div>\n" }]
3407
3407
  }], ctorParameters: () => [{ type: i1$1.Store }, { type: i2.Router }, { type: InfiniteScrollService }], propDecorators: { scrollable: [{
3408
3408
  type: ViewChild,
3409
3409
  args: ['scrollable']
@@ -3510,11 +3510,11 @@ class ProcedureModelDetailComponent extends SubscriptionnerDirective {
3510
3510
  this._outputModifications();
3511
3511
  }
3512
3512
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: ProcedureModelDetailComponent, deps: [{ token: i1$4.Actions }], target: i0.ɵɵFactoryTarget.Component }); }
3513
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: ProcedureModelDetailComponent, selector: "hvy-procedure-model-detail", inputs: { model: "model", username: "username", title: "title", eventErrors: "eventErrors", readonly: "readonly", readOnlyComment: "readOnlyComment", cancelModifications: "cancelModifications" }, outputs: { eventErrorsChange: "eventErrorsChange", modified: "modified" }, usesInheritance: true, ngImport: i0, template: "<div class=\"o-hvy-procedure-detail\">\n <div>\n <h1>{{ title ?? '@hvy.procedure.detail' | i18n }}</h1>\n @if(modifiedModel && modifiedModel.lastUpdateDateActive) {\n <div>\n @if (modifiedModel.active) {\n Proc\u00E9dure r\u00E9activ\u00E9e depuis le {{ modifiedModel.lastUpdateDateActive! | date:'dd/MM/yyyy \u00E0 HH:mm' }}\n } @else {\n Proc\u00E9dure d\u00E9sactiv\u00E9e depuis le {{ modifiedModel.lastUpdateDateActive! | date:'dd/MM/yyyy \u00E0 HH:mm' }}\n }\n </div>\n }\n </div>\n <div class=\"o-hvy-procedure-detail__container\">\n <div class=\"o-hvy-procedure-detail__container__scrollable\">\n @if (modifiedModel; as model) {\n <div class=\"o-hvy-procedure-detail__form\">\n <div>\n <h3>{{ '@hvy.procedure.formTitle' | i18n }}</h3>\n <span class=\"slt-ind2-bubble-container\">\n @if (model.active !== undefined) {\n <div [ngClass]=\"model.active ? '-green' : '-red'\">{{ '@hvy.procedure.status.active.' + model.active | i18n }}</div>\n }\n </span>\n </div>\n <table>\n <tbody>\n <!--identifiant-->\n @if (model.id > 0) {\n <tr>\n <td>{{ '@hvy.event.log.event.id' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"padId.fn(model.id)\" readonly />\n </td>\n </tr>\n }\n <!--titre-->\n <tr>\n <td>{{ '@hvy.procedure.title' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('name')\"\n [value]=\"model.name\"\n (change)=\"modify('name', $event)\"\n [maxLength]=\"50\"\n [readonly]=\"readonly\"\n />\n @if (hasError('title')) {\n <span class=\"a-form-field -error\">{{ '@hvy.procedure.alreadyExists' | i18n }}</span>\n }\n </td>\n </tr>\n <!--metier-->\n <tr>\n <td>{{ '@hvy.event.domain.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [items]=\"DOMAINS\"\n [ngModel]=\"model.domain\"\n i18nPrefix=\"@hvy.event.domain.\"\n [class.-error]=\"hasError('domain')\"\n (ngModelChange)=\"modify('domain', $event)\"\n [disabled]=\"readonly\"\n ></pry-select>\n </td>\n </tr>\n <!--description-->\n <tr>\n <td>{{ '@hvy.procedure.description' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <textarea\n [ngModel]=\"model.description\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('description')\"\n (ngModelChange)=\"modify('description', $event)\"\n [maxLength]=\"256\"\n [readonly]=\"readonly\"\n ></textarea>\n </td>\n </tr>\n <!--createur-->\n <tr>\n <td>{{ '@hvy.procedure.creator' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"model.creator\" readonly />\n </td>\n </tr>\n <!--date de cr\u00E9ation-->\n <tr>\n <td>{{ '@hvy.event.creationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"model.creationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n </tr>\n <!--date de derni\u00E8re modification-->\n <tr>\n <td>{{ '@hvy.event.lastModificationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"model.lastModificationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n <div class=\"o-hvy-procedure-detail__actions\">\n <h3>{{ '@hvy.procedure.actions' | i18n }} ({{ model.actions?.length }})</h3>\n <hvy-procedure-actions\n [actions]=\"model.actions\"\n (modified)=\"updateActions($event)\"\n [readonly]=\"readonly\"\n [readOnlyComment]=\"readOnlyComment\"\n mode=\"model\"\n [enableEditActions]=\"true\"\n ></hvy-procedure-actions>\n </div>\n }\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1$2.PrySelectComponent, selector: "pry-select", inputs: ["items", "clearable", "multiple", "closeOnSelect", "placeholder", "forcePlaceHolder", "isForm", "required", "name", "autocomplete", "alwaysShowAutosuggestedValues", "externalAutocompleteService", "bindValue", "bindLabel", "iconSize", "bindIcon", "template", "i18nPrefix", "bindClasses", "loading", "elementRef"], outputs: ["searched", "cleared", "clicked", "pressedEnter"] }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ProcedureActionsComponent, selector: "hvy-procedure-actions", inputs: ["mode", "me", "readonly", "readOnlyComment", "enableEditActions", "events", "disableSaveDIButton", "initialActions", "procedureModificationsActions", "actions"], outputs: ["modified", "commented", "refreshActions"] }, { kind: "pipe", type: i1$2.I18nPipe, name: "i18n" }, { kind: "pipe", type: i5.DatePipe, name: "date" }, { kind: "pipe", type: ForDatetimeLocalPipe, name: "forDateTimeLocal" }] }); }
3513
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.6", type: ProcedureModelDetailComponent, selector: "hvy-procedure-model-detail", inputs: { model: "model", username: "username", title: "title", eventErrors: "eventErrors", readonly: "readonly", readOnlyComment: "readOnlyComment", cancelModifications: "cancelModifications" }, outputs: { eventErrorsChange: "eventErrorsChange", modified: "modified" }, usesInheritance: true, ngImport: i0, template: "<div class=\"o-hvy-procedure-detail\">\n <div>\n <h1>{{ title ?? '@hvy.procedure.detail' | i18n }}</h1>\n @if(modifiedModel && modifiedModel.lastUpdateDateActive) {\n <div>\n @if (modifiedModel.active) {\n Proc\u00E9dure r\u00E9activ\u00E9e depuis le {{ modifiedModel.lastUpdateDateActive! | date:'dd/MM/yyyy \u00E0 HH:mm' }}\n } @else {\n Proc\u00E9dure d\u00E9sactiv\u00E9e depuis le {{ modifiedModel.lastUpdateDateActive! | date:'dd/MM/yyyy \u00E0 HH:mm' }}\n }\n </div>\n }\n </div>\n <div class=\"o-hvy-procedure-detail__container\">\n <div class=\"o-hvy-procedure-detail__container__scrollable\">\n @if (modifiedModel; as model) {\n <div class=\"o-hvy-procedure-detail__form\">\n <div>\n <h3>{{ '@hvy.procedure.formTitle' | i18n }}</h3>\n <span class=\"dashboard-bubble-container\">\n @if (model.active !== undefined) {\n <div [ngClass]=\"model.active ? '-green' : '-red'\">{{ '@hvy.procedure.status.active.' + model.active | i18n }}</div>\n }\n </span>\n </div>\n <table>\n <tbody>\n <!--identifiant-->\n @if (model.id > 0) {\n <tr>\n <td>{{ '@hvy.event.log.event.id' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"padId.fn(model.id)\" readonly />\n </td>\n </tr>\n }\n <!--titre-->\n <tr>\n <td>{{ '@hvy.procedure.title' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('name')\"\n [value]=\"model.name\"\n (change)=\"modify('name', $event)\"\n [maxLength]=\"50\"\n [readonly]=\"readonly\"\n />\n @if (hasError('title')) {\n <span class=\"a-form-field -error\">{{ '@hvy.procedure.alreadyExists' | i18n }}</span>\n }\n </td>\n </tr>\n <!--metier-->\n <tr>\n <td>{{ '@hvy.event.domain.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [items]=\"DOMAINS\"\n [ngModel]=\"model.domain\"\n i18nPrefix=\"@hvy.event.domain.\"\n [class.-error]=\"hasError('domain')\"\n (ngModelChange)=\"modify('domain', $event)\"\n [disabled]=\"readonly\"\n ></pry-select>\n </td>\n </tr>\n <!--description-->\n <tr>\n <td>{{ '@hvy.procedure.description' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <textarea\n [ngModel]=\"model.description\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('description')\"\n (ngModelChange)=\"modify('description', $event)\"\n [maxLength]=\"256\"\n [readonly]=\"readonly\"\n ></textarea>\n </td>\n </tr>\n <!--createur-->\n <tr>\n <td>{{ '@hvy.procedure.creator' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"model.creator\" readonly />\n </td>\n </tr>\n <!--date de cr\u00E9ation-->\n <tr>\n <td>{{ '@hvy.event.creationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"model.creationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n </tr>\n <!--date de derni\u00E8re modification-->\n <tr>\n <td>{{ '@hvy.event.lastModificationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"model.lastModificationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n <div class=\"o-hvy-procedure-detail__actions\">\n <h3>{{ '@hvy.procedure.actions' | i18n }} ({{ model.actions?.length }})</h3>\n <hvy-procedure-actions\n [actions]=\"model.actions\"\n (modified)=\"updateActions($event)\"\n [readonly]=\"readonly\"\n [readOnlyComment]=\"readOnlyComment\"\n mode=\"model\"\n [enableEditActions]=\"true\"\n ></hvy-procedure-actions>\n </div>\n }\n </div>\n </div>\n</div>\n", dependencies: [{ kind: "directive", type: i1$3.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1$3.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$3.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i1$2.PrySelectComponent, selector: "pry-select", inputs: ["items", "clearable", "multiple", "closeOnSelect", "placeholder", "forcePlaceHolder", "isForm", "required", "name", "autocomplete", "alwaysShowAutosuggestedValues", "externalAutocompleteService", "bindValue", "bindLabel", "iconSize", "bindIcon", "template", "i18nPrefix", "bindClasses", "loading", "elementRef"], outputs: ["searched", "cleared", "clicked", "pressedEnter"] }, { kind: "directive", type: i5.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "component", type: ProcedureActionsComponent, selector: "hvy-procedure-actions", inputs: ["mode", "me", "readonly", "readOnlyComment", "enableEditActions", "events", "disableSaveDIButton", "initialActions", "procedureModificationsActions", "actions"], outputs: ["modified", "commented", "refreshActions"] }, { kind: "pipe", type: i1$2.I18nPipe, name: "i18n" }, { kind: "pipe", type: i5.DatePipe, name: "date" }, { kind: "pipe", type: ForDatetimeLocalPipe, name: "forDateTimeLocal" }] }); }
3514
3514
  }
3515
3515
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.6", ngImport: i0, type: ProcedureModelDetailComponent, decorators: [{
3516
3516
  type: Component,
3517
- args: [{ selector: 'hvy-procedure-model-detail', template: "<div class=\"o-hvy-procedure-detail\">\n <div>\n <h1>{{ title ?? '@hvy.procedure.detail' | i18n }}</h1>\n @if(modifiedModel && modifiedModel.lastUpdateDateActive) {\n <div>\n @if (modifiedModel.active) {\n Proc\u00E9dure r\u00E9activ\u00E9e depuis le {{ modifiedModel.lastUpdateDateActive! | date:'dd/MM/yyyy \u00E0 HH:mm' }}\n } @else {\n Proc\u00E9dure d\u00E9sactiv\u00E9e depuis le {{ modifiedModel.lastUpdateDateActive! | date:'dd/MM/yyyy \u00E0 HH:mm' }}\n }\n </div>\n }\n </div>\n <div class=\"o-hvy-procedure-detail__container\">\n <div class=\"o-hvy-procedure-detail__container__scrollable\">\n @if (modifiedModel; as model) {\n <div class=\"o-hvy-procedure-detail__form\">\n <div>\n <h3>{{ '@hvy.procedure.formTitle' | i18n }}</h3>\n <span class=\"slt-ind2-bubble-container\">\n @if (model.active !== undefined) {\n <div [ngClass]=\"model.active ? '-green' : '-red'\">{{ '@hvy.procedure.status.active.' + model.active | i18n }}</div>\n }\n </span>\n </div>\n <table>\n <tbody>\n <!--identifiant-->\n @if (model.id > 0) {\n <tr>\n <td>{{ '@hvy.event.log.event.id' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"padId.fn(model.id)\" readonly />\n </td>\n </tr>\n }\n <!--titre-->\n <tr>\n <td>{{ '@hvy.procedure.title' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('name')\"\n [value]=\"model.name\"\n (change)=\"modify('name', $event)\"\n [maxLength]=\"50\"\n [readonly]=\"readonly\"\n />\n @if (hasError('title')) {\n <span class=\"a-form-field -error\">{{ '@hvy.procedure.alreadyExists' | i18n }}</span>\n }\n </td>\n </tr>\n <!--metier-->\n <tr>\n <td>{{ '@hvy.event.domain.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [items]=\"DOMAINS\"\n [ngModel]=\"model.domain\"\n i18nPrefix=\"@hvy.event.domain.\"\n [class.-error]=\"hasError('domain')\"\n (ngModelChange)=\"modify('domain', $event)\"\n [disabled]=\"readonly\"\n ></pry-select>\n </td>\n </tr>\n <!--description-->\n <tr>\n <td>{{ '@hvy.procedure.description' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <textarea\n [ngModel]=\"model.description\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('description')\"\n (ngModelChange)=\"modify('description', $event)\"\n [maxLength]=\"256\"\n [readonly]=\"readonly\"\n ></textarea>\n </td>\n </tr>\n <!--createur-->\n <tr>\n <td>{{ '@hvy.procedure.creator' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"model.creator\" readonly />\n </td>\n </tr>\n <!--date de cr\u00E9ation-->\n <tr>\n <td>{{ '@hvy.event.creationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"model.creationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n </tr>\n <!--date de derni\u00E8re modification-->\n <tr>\n <td>{{ '@hvy.event.lastModificationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"model.lastModificationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n <div class=\"o-hvy-procedure-detail__actions\">\n <h3>{{ '@hvy.procedure.actions' | i18n }} ({{ model.actions?.length }})</h3>\n <hvy-procedure-actions\n [actions]=\"model.actions\"\n (modified)=\"updateActions($event)\"\n [readonly]=\"readonly\"\n [readOnlyComment]=\"readOnlyComment\"\n mode=\"model\"\n [enableEditActions]=\"true\"\n ></hvy-procedure-actions>\n </div>\n }\n </div>\n </div>\n</div>\n" }]
3517
+ args: [{ selector: 'hvy-procedure-model-detail', template: "<div class=\"o-hvy-procedure-detail\">\n <div>\n <h1>{{ title ?? '@hvy.procedure.detail' | i18n }}</h1>\n @if(modifiedModel && modifiedModel.lastUpdateDateActive) {\n <div>\n @if (modifiedModel.active) {\n Proc\u00E9dure r\u00E9activ\u00E9e depuis le {{ modifiedModel.lastUpdateDateActive! | date:'dd/MM/yyyy \u00E0 HH:mm' }}\n } @else {\n Proc\u00E9dure d\u00E9sactiv\u00E9e depuis le {{ modifiedModel.lastUpdateDateActive! | date:'dd/MM/yyyy \u00E0 HH:mm' }}\n }\n </div>\n }\n </div>\n <div class=\"o-hvy-procedure-detail__container\">\n <div class=\"o-hvy-procedure-detail__container__scrollable\">\n @if (modifiedModel; as model) {\n <div class=\"o-hvy-procedure-detail__form\">\n <div>\n <h3>{{ '@hvy.procedure.formTitle' | i18n }}</h3>\n <span class=\"dashboard-bubble-container\">\n @if (model.active !== undefined) {\n <div [ngClass]=\"model.active ? '-green' : '-red'\">{{ '@hvy.procedure.status.active.' + model.active | i18n }}</div>\n }\n </span>\n </div>\n <table>\n <tbody>\n <!--identifiant-->\n @if (model.id > 0) {\n <tr>\n <td>{{ '@hvy.event.log.event.id' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"padId.fn(model.id)\" readonly />\n </td>\n </tr>\n }\n <!--titre-->\n <tr>\n <td>{{ '@hvy.procedure.title' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"text\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('name')\"\n [value]=\"model.name\"\n (change)=\"modify('name', $event)\"\n [maxLength]=\"50\"\n [readonly]=\"readonly\"\n />\n @if (hasError('title')) {\n <span class=\"a-form-field -error\">{{ '@hvy.procedure.alreadyExists' | i18n }}</span>\n }\n </td>\n </tr>\n <!--metier-->\n <tr>\n <td>{{ '@hvy.event.domain.name' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <pry-select\n [items]=\"DOMAINS\"\n [ngModel]=\"model.domain\"\n i18nPrefix=\"@hvy.event.domain.\"\n [class.-error]=\"hasError('domain')\"\n (ngModelChange)=\"modify('domain', $event)\"\n [disabled]=\"readonly\"\n ></pry-select>\n </td>\n </tr>\n <!--description-->\n <tr>\n <td>{{ '@hvy.procedure.description' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <textarea\n [ngModel]=\"model.description\"\n class=\"a-form-field\"\n [class.-error]=\"hasError('description')\"\n (ngModelChange)=\"modify('description', $event)\"\n [maxLength]=\"256\"\n [readonly]=\"readonly\"\n ></textarea>\n </td>\n </tr>\n <!--createur-->\n <tr>\n <td>{{ '@hvy.procedure.creator' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input type=\"text\" class=\"a-form-field\" [value]=\"model.creator\" readonly />\n </td>\n </tr>\n <!--date de cr\u00E9ation-->\n <tr>\n <td>{{ '@hvy.event.creationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"model.creationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n </tr>\n <!--date de derni\u00E8re modification-->\n <tr>\n <td>{{ '@hvy.event.lastModificationDate' | i18n }}<span class=\"required\">*</span> :</td>\n <td>\n <input\n type=\"datetime-local\"\n class=\"a-form-field\"\n [value]=\"model.lastModificationDate | forDateTimeLocal\"\n readonly\n />\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n <div class=\"o-hvy-procedure-detail__actions\">\n <h3>{{ '@hvy.procedure.actions' | i18n }} ({{ model.actions?.length }})</h3>\n <hvy-procedure-actions\n [actions]=\"model.actions\"\n (modified)=\"updateActions($event)\"\n [readonly]=\"readonly\"\n [readOnlyComment]=\"readOnlyComment\"\n mode=\"model\"\n [enableEditActions]=\"true\"\n ></hvy-procedure-actions>\n </div>\n }\n </div>\n </div>\n</div>\n" }]
3518
3518
  }], ctorParameters: () => [{ type: i1$4.Actions }], propDecorators: { model: [{
3519
3519
  type: Input
3520
3520
  }], username: [{